OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Понедельник, 11 Ноябрь, 2024 14:49

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: полная поддержка юникода
СообщениеДобавлено: Четверг, 30 Март, 2023 17:16 

Зарегистрирован: Воскресенье, 06 Август, 2017 19:33
Сообщения: 95
Много копий уже сломали, но полная поддержка юникода необходима. Добавьте LONGCHAR.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 01 Апрель, 2023 02:45 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4708
Откуда: Россия, Орёл
Александр К писал(а):
Много копий уже сломали, но полная поддержка юникода необходима. Добавьте LONGCHAR.

Если особо надо, можно решить библиотечно, не залезая в язык. Для текущих целей более чем достаточно 2-байтного CHAR.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 01 Апрель, 2023 07:46 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1482
Борис Рюмшин писал(а):
Если особо надо, можно решить библиотечно, не залезая в язык. Для текущих целей более чем достаточно 2-байтного CHAR.
плюсдофига. с UCS-4 можно работать и через INTEGER. а переделывать всю среду с UCS-2 на UCS-4 — и расточительно, и там работы и работы и работы. ящитаю.

кстати, «полной поддержки юникода» нет ни в одной программе на свете. до сих пор.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 01 Апрель, 2023 16:27 

Зарегистрирован: Воскресенье, 06 Август, 2017 19:33
Сообщения: 95
Цитата:
Для текущих целей более чем достаточно 2-байтного CHAR

Вот надо какую-то особую закорючину вывести - и как?
Цитата:
переделывать всю среду

Для того, чтобы добавить новый базовый тип надо всю среду переделывать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 01 Апрель, 2023 16:45 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4708
Откуда: Россия, Орёл
Александр К писал(а):
Вот надо какую-то особую закорючину вывести - и как?
Цитата:
переделывать всю среду

Для того, чтобы добавить новый базовый тип надо всю среду переделывать?

Какую, например, закорючину? И отображать этот новый тип кто будет?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 01 Апрель, 2023 16:47 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4708
Откуда: Россия, Орёл
Справочно: у нас ещё не до конца переведён компилятор и рантайм на CHAR. Из-за этого и обратной совместимости внутри болтается UTF-8, который там не явно нужен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 01 Апрель, 2023 18:28 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1482
Александр К писал(а):
Цитата:
Для текущих целей более чем достаточно 2-байтного CHAR

Вот надо какую-то особую закорючину вывести - и как?
Цитата:
переделывать всю среду

Для того, чтобы добавить новый базовый тип надо всю среду переделывать?
давайте я вам в компилятор добавлю LONGCHAR (это десять минут работы), а вы мне после этого продемонстрируете, как вы собираетесь при помощи этого нового типа хотя бы выводить «закорючины» без переделывания среды. чтобы было интересней, предлагаю 500 USD в качестве приза. сможете — они ваши. нет — тогда вы мне это выплачиваете. идёт?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 01 Апрель, 2023 18:34 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1482
Борис Рюмшин писал(а):
Справочно: у нас ещё не до конца переведён компилятор и рантайм на CHAR. Из-за этого и обратной совместимости внутри болтается UTF-8, который там не явно нужен.
а вот тут я бы как раз сказал, что не надо ничего трогать: utf-8 там вполне в тему, и полностью закрывает все возможные проблемы с юникодом, как существующие, так и будущие. просто потому, что он спокойно покрывает весь диапазон, а сложных операций со строками ни там, ни там не надо. омики не зря не стали курочить эти части, я считаю, и нам тоже лучше оставить там SHORTCHAR и не рыпаться.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 01 Апрель, 2023 21:09 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4708
Откуда: Россия, Орёл
arisu писал(а):
Борис Рюмшин писал(а):
Справочно: у нас ещё не до конца переведён компилятор и рантайм на CHAR. Из-за этого и обратной совместимости внутри болтается UTF-8, который там не явно нужен.
а вот тут я бы как раз сказал, что не надо ничего трогать: utf-8 там вполне в тему, и полностью закрывает все возможные проблемы с юникодом, как существующие, так и будущие. просто потому, что он спокойно покрывает весь диапазон, а сложных операций со строками ни там, ни там не надо. омики не зря не стали курочить эти части, я считаю, и нам тоже лучше оставить там SHORTCHAR и не рыпаться.

У Оминков туда руки не дошли с переводом на CHAR. UTF-8 там Центр поставил, насколько я помню.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 01 Апрель, 2023 21:57 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1482
Борис Рюмшин писал(а):
У Оминков туда руки не дошли с переводом на CHAR. UTF-8 там Центр поставил, насколько я помню.
ну так да: омики за кучу лет не запарились. положим, они и юникодными идентификаторами не запарились, конечно, но смотрите: utf-8 решает проблемы с уникодными идентификаторами, и при этом не требует изменения формата файлов. всё, что нужно поменять — это вставить декодеры utf-8 в инструменты из Dev, да сделать обёртку для `ThisMod()` и прочих, которая принимает `CHAR`, а дальше сама разберётся. то есть, результат достигнут и без глобальной переделки ядра с компилятором же, разве не так? а, `Meta` ещё подпилить для декода имён.

то есть, мне лично кажется, что всё нормально работает с байтами и utf-8, и ничего трогать «совсем внизу» не надо. заодно это позволяет при необходимости иметь полный спектр юникода, а не только первую равнину (если вдруг кто-то решит допиливать до такого вида), а менять всё ещё ничего не надо будет. сплошные победы ценой малой боли в нескольких сервисных модулях.

из недостатков разве что укорачивание максимальной длины идентификатора для не-ascii. ну и ладно, ну и что. там 256 байтов, даже если брать патологию в четыре utf-8 байта на символ, всё ещё остаётся 64 символа (ну, 63, ладно), более чем достаточно, мне кажется.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB