PROCEDURE (w: Writer) WriteBytes* (IN x: ARRAY OF BYTE; beg, len: INTEGER), NEW, ABSTRACT;

Позволяет записать массив байтов. А если мне например надо сконкатенировать 2 строки, размеры которых я не знаю, то это уже не получиться сделать или же надо сначала узнать длину одной из "Files.File строк", выделить память под массив байт, скопировать туда содержимое Files.File, затем передать это в WriteBytes. Что не очень удобно.

Согласен, что, возможно, Files.File и TextModels.Model можно использовать с некоторыми ограничениями в качестве строк, но это получается не универсально. Например, также просто как в Delphi не получется.
## Код:
```
var 
  a, b, c: string;
begin
  a := ...;
  b := ...;
  c := a + b;
end.
```


Насчет обертки над байтами для Files.File: у меня такой нет и считаю, что это не очень хорошая идея использовать Files.File для работы со строками, даже если бы была такая обертка. Одно то, что надо будет вводить дополнительные сущности Reader, Writer уже усложняет работу.