В Обероне тоже есть строки, которые заканчиваются нулём.
## Код:
```
PROCEDURE Proc();
VAR str: ARRAY 100 OF CHAR;
BEGIN
  str := "Hello";
END Proc;
```

Допустить, мы будем хранить рядом со строкой еще одно число, где хранится длина текущей строки чтобы в дальнейшем можно было быстрее конкатенировать строки и так далее.
В данном случае, со словом Hello, у нас длина будет 5 символов.
Но что если в дальнейшем будет обращение к элементу массива str[1] := 0X; ?
Получается, что каждое присваивание элементу массива должно проверяться на то, что нет ли там нулевой строки и не уменьшилась ли строка.