OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Пятница, 30 Июль, 2021 05:19

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




Начать новую тему Ответить на тему  [ Сообщений: 49 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: #008 Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Вторник, 10 Декабрь, 2019 23:23 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4541
Откуда: Россия, Орёл
Пока сюда, потому что точно не понимаю, куда приткнуть.
(Надо по ББ темы и форумы переформатировать как-то, а то уже непонятно куда про что писать.)

Так вот идея произрастает из дискуссии в Telegram по поводу левых функций в интерфейсе Kernel для работы с UTF8. Им там однозначно не место! Но суть не в этом.

Чтобы отсечь сразу ненужный диспут: UTF8 широко сейчас применяется на практике, в том числе и нами. Но это формат обмена с внешним миром.

Внутри же ББ, как известно, используется UCS2. UTF8 туда попал (в исполнении Центра) для поддержки национальных алфавитов в идентификаторах КП. И попал он туда, чтобы не сильно менять компилятор и символьные файлы, потому что там используется SHORTCHAR. Для обратной бинарной совместимости это имело смысл. Но сейчас уже совместимость рушится из-за изменений, например в Files. Поэтому всё равно требуется для чего-то перекомпиляция. Да и вообще давно все всё перекомпилируют регулярно.

А раз так, то почему бы не вывести, наконец, UTF8 из недр BlackBox, то есть не довести юникодизацию до нормального состояния, с использованием штатного CHAR вместо SHORTCHAR, где он ещё остался?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Среда, 11 Декабрь, 2019 00:57 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Вылизывать грязь надо, да.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Среда, 11 Декабрь, 2019 01:50 
Аватара пользователя

Зарегистрирован: Суббота, 16 Февраль, 2008 02:47
Сообщения: 494
Плюсую. У меня нет в использовании проприетарных старых модулей, которые без исходников. Все можно перекомпилировать. У кого есть, отзовитесь?
А то когда пишешь Kernel.Utf8Name оно как-то не oberon way: смешивается суть сущности с форматом ее представления; обычно у нас это разделяется: сущности - имя, представлению - тип. И вообще, да простит меня Евгений Темиргалеев, цифры в именах - это.. ну, на мой вкус читать неудобно, по меньшей мере )


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Среда, 11 Декабрь, 2019 15:48 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3124
В целом я не против. Лишь бы работало хорошо. Но почему так раздражает Utf8 в ядре? Может переименовать его MakeShortCharString или как угодно еще?
Это один из лучших способов решить задачу, при этом не лезя в компилитор и т.д.

Не обязалельно использовать эту реализацию из ядре вообще где-то в модулях пользователя! Это лучше бы в докментации даже прописать. А использовать для преобразования надо Strings. При этом с Strings надо убрать зависимость от ядра и сделать там другую реализацию Utf8. Мы так и планировали, но потом про это Йозеф забыл.
А современный фреймворк без Utf8 - это нонсенс как раз.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Среда, 11 Декабрь, 2019 16:58 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4541
Откуда: Россия, Орёл
Иван Денисов писал(а):
В целом я не против. Лишь бы работало хорошо. Но почему так раздражает Utf8 в ядре? Может переименовать его MakeShortCharString или как угодно еще?
Это один из лучших способов решить задачу, при этом не лезя в компилитор и т.д.

Это промежуточное решение, очевидно же. CHAR -- правильное по смыслу решение. И да, пора уже лезть в компилятор.
Цитата:
Не обязалельно использовать эту реализацию из ядре вообще где-то в модулях пользователя! Это лучше бы в докментации даже прописать.

Из интерфейса её убрать надо, а не в документации прописывать.
Цитата:
А использовать для преобразования надо Strings. При этом с Strings надо убрать зависимость от ядра и сделать там другую реализацию Utf8. Мы так и планировали, но потом про это Йозеф забыл.

Вот это правильно.
Цитата:
А современный фреймворк без Utf8 - это нонсенс как раз.

Вот именно, фреймворк. Для рантайма это инородная сущность. И, кстати, Strings это библиотека, а не фреймворк. Так что и там спорно. Отдельный модуль для работв с utf8 в составе фреймворка -- это да. Это хорошо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Среда, 11 Декабрь, 2019 22:36 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
DIVIDE ET IMPERA в IT-версии:

"По умолчанию разделяем, если можно разделить.
Если не разделяем, то доказываем почему нельзя разделять."

Правильное место для UTF8 -- библиотека.

Надо чистить и упрощать всё, что можно и возможно.
В том числе и превентивно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Среда, 11 Декабрь, 2019 23:36 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9427
Откуда: Россия, Орёл
1) Предлагаю зафиксировать тезис, что бинарные структуры "жизни модулей КП/ББ" в памяти являются не деталями реализации, а большой ценностью и конкурентным преимуществом - позволяя в полтычка решать то, что крайне громоздко в рефлексиях-метаинструментах раздутых языков. И, как и сам язык стабилен и проверен, так и его "способ жизни в памяти в рантайме" - тоже.

2) Исходя из этого, прочистка от некоторых случайных шероховатостей (типа SHORTCHAR, влекущего необходимость UTF, или единственной неполноты метаинформации - невозможности работать с методами) - важна! Но при этом нужно не попасть в ошибочную позицию "это детали реализации" - нет, это должно стать стабильной спецификацией как раз, все эти бинарные структуры. Они себя зарекомендовали на протяжении 20 лет. И именно поэтому - даёшь их окончательное привдение в порядок!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Среда, 11 Декабрь, 2019 23:37 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3124
Давайте только разделим две вещи.

Реализацию механизмов ядра.

И присутствие Utf8 в Блэкбоксе.

Присутствие Utf8 нужно в кросс-платформенной сборке, так как большая часть привязок использует Utf8 для передачи всевозможных строковых аргументов для библиотек Gtk2 и им подобным. Также как и в Linux и им подобных системах Utf8 повсеместно используется для хранения текстовых данных различных конфигурационных файлов системы, пользователя и т.п. Так что Utf8 надо в Блэкбоксе оставить. Вынести в отдельный модуль из Strings - не возражаю, но и не поддерживаю. Модули плодить тоже не очень позитивно. В Strings Utf8 может жить в вполне логично, раз это операции над строками.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Среда, 11 Декабрь, 2019 23:41 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4541
Откуда: Россия, Орёл
Иван Денисов писал(а):
Давайте только разделим две вещи.

Реализацию механизмов ядра.

И присутствие Utf8 в Блэкбоксе.

Иван, я же специально оговорил в первом сообщении. Может не внятно выразился. Utf8 нужен, мы его сами широко используем. Но по внешнму контуру. Внутри ему делать нечего.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Среда, 11 Декабрь, 2019 23:43 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4541
Откуда: Россия, Орёл
Иван Денисов писал(а):
Вынести в отдельный модуль из Strings - не возражаю, но и не поддерживаю. Модули плодить тоже не очень позитивно. В Strings Utf8 может жить в вполне логично, раз это операции над строками.

Там операции именно над строками КП, т. е. над ARRAY OF CHAR. UTF8 формат внешний, поэтому в отдельный модуль -- вполне себе правильно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Четверг, 12 Декабрь, 2019 00:17 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3124
Борис Рюмшин писал(а):
Иван Денисов писал(а):
Давайте только разделим две вещи.

Реализацию механизмов ядра.

И присутствие Utf8 в Блэкбоксе.

Иван, я же специально оговорил в первом сообщении. Может не внятно выразился. Utf8 нужен, мы его сами широко используем. Но по внешнму контуру. Внутри ему делать нечего.

Заголовок вводит в заблуждение, и сейчас также — неоднозначное уточнение.

Utf8 нужен в Блэкбоксе из коробки. Пусть и в виде отдельного модуля, но в стандартном дистрибутиве.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Четверг, 12 Декабрь, 2019 06:44 

Зарегистрирован: Пятница, 22 Март, 2019 07:50
Сообщения: 62
Показалось (может ошибся), что кто-то делит на 2 слоя - "внутри" и "снаружи", а кто-то на три - "ядро", "стандартные библиотеки", "дополнительные модули" - в зависимости, видимо, от решаемых практических задач. Какой-то общий взгляд на систему "сверху" выработан уже - или нет? Хочется понять общую идею


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Четверг, 12 Декабрь, 2019 09:43 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4541
Откуда: Россия, Орёл
Иван Денисов писал(а):
Utf8 нужен в Блэкбоксе из коробки. Пусть и в виде отдельного модуля, но в стандартном дистрибутиве.

Ну и я об этом.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Четверг, 12 Декабрь, 2019 13:24 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1382
Я не совсем понимаю, предлагается изъять процедуры из Kernel или совсем избавиться от UTF-8 в бинарниках?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Четверг, 12 Декабрь, 2019 14:38 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4541
Откуда: Россия, Орёл
Trurl писал(а):
Я не совсем понимаю, предлагается изъять процедуры из Kernel или совсем избавиться от UTF-8 в бинарниках?

Избавиться от UTF8 в бинарниках.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Четверг, 12 Декабрь, 2019 15:36 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1382
Ну, это уже радикальные изменения. Потянет на 2.0.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Четверг, 12 Декабрь, 2019 15:49 

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1649
А есть ли возможность вообще строковые данные из ядра убрать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Четверг, 12 Декабрь, 2019 17:00 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2662
Откуда: Россия, Ярославль
Очень типичная ситуация, кто-то что-то сделал в общей кодовой базе, потому что "ну надо что-то делать", кто-то проглядел, не среагировал, теперь это новая реальность и все страдают.
Получается, самый действенный путь для изменений, которые иначе завязнут в обсуждениях, это вот так вот впихивать своё в окно возможностей, пока никто не видит.
Правда это как-то неэтично, что ли.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Четверг, 12 Декабрь, 2019 18:04 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1382
Wlad писал(а):
А есть ли возможность вообще строковые данные из ядра убрать?

Как их уберешь? Загружать же модули надо, связывать по именам. Да еще метаинформация.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Предложение: убрать UTF8 из BlackBox
СообщениеДобавлено: Четверг, 12 Декабрь, 2019 18:05 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1382
Пётр Кушнир писал(а):
кто-то что-то сделал в общей кодовой базе

А разве есть общая кодовая база?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 49 ]  На страницу 1, 2, 3  След.

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


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

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


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

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