OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 25 Сентябрь, 2018 11:49

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


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему  [ Сообщений: 55 ]  На страницу 1, 2, 3  След.
Автор Сообщение
СообщениеДобавлено: Четверг, 22 Март, 2018 22:55 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2185
Откуда: Красноярск
Представляю вниманию экспериментальный проект.
Компонентный Паскаль с идентификаторами в нижнем регистре (идея навеяна языком Zonnon).
В верхнем регистре также допускается написание, как и в Zonnon.

Код:
module MyTest;
   import Log;
   procedure Do*;
   begin
      Log.String("привет мир");
      Log.Ln;
   end Do;
end MyTest.


Для реализации компилятора были внесены изменения в модуль DevCPS. Достаточно мало изменений потребовалось внести в компилятор.
В самом каркасе потребовалось добавить ко всем идентификаторам с названиями как у ключевых слов (in, out, type и т.п.) — символ нижнего подчеркивания.

Проект сугубо экспериментальный. Не планирую писать в таком стиле, но было интересно, как это будет работать. Также интересно эту среду подсунуть людям, которые не переносят верхний регистр в ключевых словах. Но это уже не технический а психологический эксперимент :)

Сборка LowerCase Edition сделана на основе кросс-платформенной сборки под номером 68. Архив выкладываю тут на форуме.


Вложения:
blackbox-lowercase.7z [3.85 МБ]
Скачиваний: 29
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Март, 2018 23:07 

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1334
Вполне.
Я - "за".
Дальнейшим шагом в сообществе будет объявление о конкурсе на реализацию самого эффективного/быстрого синтаксического раскрашивателя исходников... :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 23 Март, 2018 08:38 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1086
Добралась эта мода и до ББ, значит. В A2 уже есть, и в obc. В obc понравилось
Цитата:
–rsb Accept a dialect of the language where both language keywords (like begin) and predefined identifiers (like integer) are written in lower case.
This flag is provided by special request of Richard Simpson Bird.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 23 Март, 2018 11:15 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7850
Откуда: Троицк, Москва
ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 23 Март, 2018 13:21 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1086
ыыыыыыыыыыыыыыыыыыыыыыыыы тоже заработает. :evil:
На зачем специальную сборку создавать :?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 23 Март, 2018 22:31 

Зарегистрирован: Пятница, 13 Март, 2015 16:40
Сообщения: 220
Иван Денисов писал(а):
Компонентный Паскаль с идентификаторами в нижнем регистре

Началось в колхозе утро... Ж8-/

Вот лучше сделать скроллинг, когда курсор находится в 3..5 строчках от верхней/нижней границы окна - гораздо полезнее begin end.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 23 Март, 2018 22:44 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2518
Откуда: Россия, Ярославль
В стиле Веселовского и компании...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 23 Март, 2018 23:29 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1086
Wlad писал(а):
самого эффективного/быстрого синтаксического раскрашивателя исходников

Надо чтобы ключевые слова выделялись жирным. Т.е. if, IF - не ключевые слова, а вот if, IF и даже If - ключевые. :evil:


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 01:34 

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1334
Trurl писал(а):
Wlad писал(а):
самого эффективного/быстрого синтаксического раскрашивателя исходников

Надо чтобы ключевые слова выделялись жирным. Т.е. if, IF - не ключевые слова, а вот if, IF и даже If - ключевые. :evil:

Вспоминается PL/I...
IF IF THEN THEN ELSE ELSE...
и всё - "в рамочках"...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 09:14 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2185
Откуда: Красноярск
Trurl писал(а):
На зачем специальную сборку создавать :?

В сборке все идентификаторы, которые совпадают с ключевыми словами in, out, type... заменены на in_, out_, type_ и т.д. Так что модифицированный компилятор может собрать весь каркас. Ну и есть специальный модуль DevLowerTransform для того, чтобы другие подсистемы адаптировать таким же образом автоматически. Вручную исправить все переменные в каркасе оказалось непосильным трудом, так что сделал небольшую автоматизацию. Предупреждение, что если будете запускать DevLowerTransform.Start, то имейте в виду, что он будет проверять все папки, подпапки и т.д. локатора файла на предмет наличия odc файлов и их менять. Так что используйте с осторожностью, если кто-то до этого доберется.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 09:40 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2185
Откуда: Красноярск
Пётр Кушнир писал(а):
В стиле Веселовского и компании...

Да, их компании действительно понравилось :) Может быть кто-то так сможет попробовать Оберон в таком виде, и потом уже приобщиться к классическому стилю со временем. Возможно так снизить некий порог вхождения.
Цитата:
[19:03:59] <geniepro> Ну вот так даже более-менее симпатично стало выглядеть:
module MyTest;
import Log;
procedure Do*;
begin
Log.String("привет мир");
Log.Ln;
end Do;
end MyTest.
[19:07:32] <valexey> угу
[19:07:40] <valexey> код больше не КРИЧИТ на тебя
[19:10:16] <geniepro> ага, тоже хотел написать про крик, но поленился )))
[19:10:55] <geniepro> однако Зонон был таки заброшен, и в нём вроде так и не удосужились доделать ключевые слова в верхнем регистре...
[19:13:42] <valexey> алсоу в нижнем регистре просто печатать удобней и быстрее


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 14:48 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2518
Откуда: Россия, Ярославль
Наконец-то Оберон угодил реальным профессионалам ИТ, из Америки!!!


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 15:18 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2185
Откуда: Красноярск
Пётр Кушнир писал(а):
Наконец-то Оберон угодил реальным профессионалам ИТ, из Америки!!!

Фокус-группа, а что нет? Вполне сформировавшаяся специфическая фокус-группа. Это вообще здорово, что есть разные фокус-группы. Еще бы идентифицировать фокус-группу учителей школьных по информатике. Есть ведь проект Информатика-21, значит должна же быть где-то группа учителей на форуме.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 17:06 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 8989
Откуда: Россия, Орёл
Проблема нормально решается только на уровне уже не-текста.

Чтобы конкретный человек у себя галку включил, как он хочет видеть.

Иначе начнут плодить всё в нижнем - а потом нам страдать, читая их код.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 17:25 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4106
Откуда: Россия, Орёл
Согласен с И. Е.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 18:24 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1086
Илья Ермаков писал(а):
Чтобы конкретный человек у себя галку включил, как он хочет видеть.

Иначе начнут плодить всё в нижнем - а потом нам страдать, читая их код.

Так вы же можете включить, чтобы в верхнем.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 20:05 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 8989
Откуда: Россия, Орёл
Trurl писал(а):
Илья Ермаков писал(а):
Чтобы конкретный человек у себя галку включил, как он хочет видеть.

Иначе начнут плодить всё в нижнем - а потом нам страдать, читая их код.

Так вы же можете включить, чтобы в верхнем.


Это как?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 20:11 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2185
Откуда: Красноярск
Илья Ермаков писал(а):
Trurl писал(а):
Так вы же можете включить, чтобы в верхнем.

Это как?

В этой сборке пока такой функциональности не предусмотрено, но преобразование регистра ключевых слов в тексте Блэкбокса примерно на 30-40 строк программка. Так что если потребуется, то несложно добавить.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 21:24 

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 24 Март, 2018 22:16 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7850
Откуда: Троицк, Москва
[19:13:42] <valexey> алсоу в нижнем регистре просто печатать удобней и быстрее

Они откуда свалились?


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

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


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

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


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

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