The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Эксперимент по разработке частей ядра Linux на языке Rust"
Отправлено freehck, 04-Июн-17 20:09 
> "Видимый" синтаксис - это прежде всего набор маркеров, позволяющий быстро понимать, что происходит, не вчитываясь в каждую строку.

Ну, этому помогает скорее не синтаксис, а кое-какие решения, принятые на этапе проектирования языка. Например отсутствие перегрузок.
А то как это часто бывает с плюсами, смотришь на код, там написано read(...), а у тебя этот самый read 7 раз переопределён в текущем пространстве имён.
Или отдельная песня с итераторами, для которых перегружен оператор стрелки, в результате чего оказывается, что i->clue.getExts() вызывает метод getExts класса, которому принадлежит поле clue текущего элемента, на который ссылается итератор i.

> А, foreach - ясно, глянули, что и по чём итерируется - и всё.


(for ([i '(1 2 3)])
     <code>)

Вроде ясно, что i перебирает значения от 1 до 3, и для каждого выполняется блок <code>.

> if - отлично, условие, ветка 1, ветка 2.


(if <condition>
    <true-branch>
    <false-branch>)

Офигенно "другой" синтаксис.

> Всё чётко отделено и визуально выделяется. А скобочки ваши -
> брейнфак в профиль, независимо от "мощности" и от того, что алгоритм
> не изменится.

Есть у меня подозрение, что этого мнения придерживаются люди, которые полезли править sexp-ы в редакторе, который не поддерживает подсветку парных скобок и автоматическую расстановку равных отступов для выражений одного уровня вложенности. Детектирую это простым вопросом: а json или xml как способ хранения данных чем-либо отличаются от sexp-ов?

> Ну и к тому же - кастомный синтаксис это прикольно... Когда это небольшое дополнение к основному, перекрывающему абсолютное большинство потребностей.

Ну в общем да, тут есть нюанс: прежде, чем создавать новый макрос, надо трижды подумать, а нужно ли оно вообще. Ибо макрос визуально не отличается от любого другого символа, но можно огрести при попытке передать его параметром в функцию высшего порядка. Однако, справедливости ради, перед сишниками такой проблемы просто не возникает, потому что у вас тупо нет функций высшего порядка (точнее, есть, но очень сильно кастрированные).

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру