Re[10]: Язык Go - слабые стороны
От: ononim  
Дата: 16.02.22 12:09
Оценка:
vsb>>Забавный факт. В жаве кажется до 8 версии substring работал именно так: был один общий массив символов и offset/length. Т.е. маленькая строка могла внутри держать массив на мегабайт, к примеру. Но потом поменяли на копирование.
Pzz>Это очень такое Сишное поведение. Т.е., человек, для которого привычен Си, другого бы и не ждал.
Проблема в том что это поведение неочевидно из синтаксиса, как я уже писал гдето тут, если бы append принимал указатель на слайс, подвергающийся модификации — все было бы очевиднее. А он принимает слайс и возвращает слайс, причем тот слайс который он принимает остается в непредсказуемом для программиста состоянии. По сути — классическое сишное UB, просто без SIGSEGV.
Как много веселых ребят, и все делают велосипед...
Отредактировано 16.02.2022 12:11 ononim . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.