Size: a a a

Compiler Development

2020 December 01

А⚙

Антон ⚙️ in Compiler Development
hazer_hazer
Плюсы
А почему не Rust?
источник

h

hazer_hazer in Compiler Development
И будут плюсы всегда.

Я не планирую что-либо другое использовать, разве что вм на си. Но пока плюсы
источник

h

hazer_hazer in Compiler Development
Антон ⚙️
А почему не Rust?
Потому что я не растоман
источник

А⚙

Антон ⚙️ in Compiler Development
hazer_hazer
И будут плюсы всегда.

Я не планирую что-либо другое использовать, разве что вм на си. Но пока плюсы
> VM на C

А, ну то есть чтобы ну вот прям наверняка уязвимостей посадить, я понял
источник

h

hazer_hazer in Compiler Development
hazer_hazer
Потому что я не растоман
Не надо меня вербовать пожалуйста только)
источник

h

hazer_hazer in Compiler Development
Антон ⚙️
> VM на C

А, ну то есть чтобы ну вот прям наверняка уязвимостей посадить, я понял
Ну. Вы сами меня на си давно уговаривали ведь.
Не вы. Но в этом чате. За портабилити
источник

h

hazer_hazer in Compiler Development
Антон ⚙️
> VM на C

А, ну то есть чтобы ну вот прям наверняка уязвимостей посадить, я понял
Вербовка. Этап первый: Раст = безопасность
источник

M

MaxGraey in Compiler Development
Kir
Я больше скажу: лучше хранить спан стринга и ссылку на исходный текст. Если тексты ожидаются здоровенные, то лучше его перекодировать в UTF32.
Обыно валидные символы для начала и середины токена не привышают значение 65500 в codepoint метрики, это значит что вместо UTF32 вполне можно обойтись 16-bit на символ (UCS-2 кодировка)
источник

А⚙

Антон ⚙️ in Compiler Development
hazer_hazer
Вербовка. Этап первый: Раст = безопасность
В контексте сравнения с C — да. Если что опыт IT-индустрии и показывает, так это то, что писать код без уязвимостей на C — это выше способностей обычного смертного
источник

h

hazer_hazer in Compiler Development
Антон ⚙️
В контексте сравнения с C — да. Если что опыт IT-индустрии и показывает, так это то, что писать код без уязвимостей на C — это выше способностей обычного смертного
Понимаю.
Я не любитель си в принципе. Особенно с точки зрения разработки. Плоскость беее
источник

А⚙

Антон ⚙️ in Compiler Development
MaxGraey
Обыно валидные символы для начала и середины токена не привышают значение 65500 в codepoint метрики, это значит что вместо UTF32 вполне можно обойтись 16-bit на символ (UCS-2 кодировка)
Ага, а потом огребать от:
* суррогатных пар
* порядка байт
* увеличение потребления памяти по сравнению с ASCII в два раза

Нет уж, UTF-16 — это отвратительный компромисс
источник

M

MaxGraey in Compiler Development
Антон ⚙️
Ага, а потом огребать от:
* суррогатных пар
* порядка байт
* увеличение потребления памяти по сравнению с ASCII в два раза

Нет уж, UTF-16 — это отвратительный компромисс
USC-2 без суррогатных пар. Внимательнее читайте, я ничего не говорил про UTF16
источник

YS

Yaroslav Schekin in Compiler Development
MaxGraey
Обыно валидные символы для начала и середины токена не привышают значение 65500 в codepoint метрики, это значит что вместо UTF32 вполне можно обойтись 16-bit на символ (UCS-2 кодировка)
Хмм... а почему не UTF-8 и байтовые позиции в потоке? Какая с этим проблема?
источник

M

MaxGraey in Compiler Development
MaxGraey
USC-2 без суррогатных пар. Внимательнее читайте, я ничего не говорил про UTF16
И не требует кодирования/декодирования. Это то же самое что ACSII, только размер поинта 16 бит
источник

А⚙

Антон ⚙️ in Compiler Development
MaxGraey
USC-2 без суррогатных пар. Внимательнее читайте, я ничего не говорил про UTF16
Остальные проблемы остаются, плюс прибавляется тот факт, что не все символы представимы
источник

M

MaxGraey in Compiler Development
Не внимательно читаете)
источник

M

MaxGraey in Compiler Development
Вам и не нужно представлять все символы. Только валидные для идентификаторов, а они зачастую не выходят за границу 16 бит)
источник

h

hazer_hazer in Compiler Development
MaxGraey
Вам и не нужно представлять все символы. Только валидные для идентификаторов, а они зачастую не выходят за границу 16 бит)
А эмодзи подпадают под эти промежутки?
источник

M

MaxGraey in Compiler Development
hazer_hazer
А эмодзи подпадают под эти промежутки?
Эмодзи так же представимы и не выходят за эти границы, так как эмодзи это графемные кластеры зачастую и состоят из набора тех же 16-битовых символов, но мы их видеим как один символ на экране)
источник

А⚙

Антон ⚙️ in Compiler Development
hazer_hazer
А эмодзи подпадают под эти промежутки?
Нет, как и иероглифы
источник