Size: a a a

Compiler Development

2021 February 01

AK

Andrei Kurosh in Compiler Development
Edmond Dantes
В смысле уже не используются? Да, я видел что HAML как проект почти не развивается
Возможно это как-то связано с тем, что развились IDE и экономить на нажатиях клавиш стало бессмысленно
источник

ДК

Дмитрий К in Compiler Development
Andrei Kurosh
Как вы определяете популярность yaml?
Тем, что все CI используют именно его, к сожалению.
источник

AK

Andrei Kurosh in Compiler Development
Дмитрий К
Простейший парсер tree занимает 50 строк на яваскрипте. Более эффективный с посимвольным разбором весит уже 150, что тоже не очень много.
Я вас несколько разочарую, но парсер, который начинается с конструирования регулярок из результата вычисления другой регулярки - это уже сложно назвать "простым", сколько бы пользовательских строк в нем не было
источник

ДК

Дмитрий К in Compiler Development
Edmond Dantes
Если бы существовал HAML подобный синтаксис для декларативного описания работы с данными как смеси HTML + CSS + SQL - это было бы круто
Так не сложно придумать свой язык на базе tree. Можно взять xml.tree за основу.
источник

ДК

Дмитрий К in Compiler Development
Andrei Kurosh
Я вас несколько разочарую, но парсер, который начинается с конструирования регулярок из результата вычисления другой регулярки - это уже сложно назвать "простым", сколько бы пользовательских строк в нем не было
Это просто костыль, его можно довольно безболезненно убрать, заменив на вырезание подстроки.
источник

ДК

Дмитрий К in Compiler Development
Сейчас используется этот парсер, если что.
источник

AK

Andrei Kurosh in Compiler Development
Во-первых, как бы ни был устроен парсер, распознавание значимых отступов всегда будет сложнее, чем игнорирование - как минимум потому, что нужно хранить дополнительное состояние в виде стека текущих отступов, помимо просто позиции внутри строки. Это не то, чтобы колоссальная добавленная сложность, но она ненулевая
источник

AK

Andrei Kurosh in Compiler Development
Во-вторых, я уже видел ваши велопроекты на хабре и мне не очень интересно разбирать их код и вообще их обсуждать
источник

ДК

Дмитрий К in Compiler Development
Andrei Kurosh
Во-первых, как бы ни был устроен парсер, распознавание значимых отступов всегда будет сложнее, чем игнорирование - как минимум потому, что нужно хранить дополнительное состояние в виде стека текущих отступов, помимо просто позиции внутри строки. Это не то, чтобы колоссальная добавленная сложность, но она ненулевая
Стек в любом случае нужен, если язык рекурсивный. Больше ничего хранить не нужно - просто сравниваем число отступов в строке с размером стека.
источник

AK

Andrei Kurosh in Compiler Development
даже если язык рекурсивный, стек на этапе лексера не нужен без значимых отступов
источник

ДК

Дмитрий К in Compiler Development
Andrei Kurosh
даже если язык рекурсивный, стек на этапе лексера не нужен без значимых отступов
1. Во многих языках таки нужен и для лексера.
2. Тут сразу идёт парсинг без отдельной стадии лексинга.
источник

AK

Andrei Kurosh in Compiler Development
ясно, понятно
источник

ED

Edmond Dantes in Compiler Development
Andrei Kurosh
Возможно это как-то связано с тем, что развились IDE и экономить на нажатиях клавиш стало бессмысленно
с этой точки зрения — охотно верю. Тут ведь конечно дело не только в нажатиях клавишах, но и в абстракции данных. Хотя HAML их особо и не предоставлял. По сути это был микс из HTML + язык
источник

ED

Edmond Dantes in Compiler Development
Дмитрий К
Так не сложно придумать свой язык на базе tree. Можно взять xml.tree за основу.
Спасибо, возможно возьму за основу. Идея то в целом очень верная
источник

ДК

Дмитрий К in Compiler Development
Edmond Dantes
Спасибо, возможно возьму за основу. Идея то в целом очень верная
Ок, если что спрашивайте в https://t.me/lang_idioms
А то тут админ не очень любит велопроекты.
источник

ED

Edmond Dantes in Compiler Development
Хорошо, спасибо
источник

M

MrSmith in Compiler Development
Идеи единого гипертектового формата все ещё не дают спокойно спать и будуражит умы, а по сути вопроса выглядит по мне обсолютно не читаемо, ну не только судя по мне на Хабре большинство высказало тоже мнение.
источник

ED

Edmond Dantes in Compiler Development
как я понял, идея там никак не в гипертекстовом формате, а в том, чтобы синтаксис максимально соответствовал идиоме
источник

pl

peach lasagna in Compiler Development
Есть у кого компилятор кода в аниме?
источник

M

MrSmith in Compiler Development
Edmond Dantes
как я понял, идея там никак не в гипертекстовом формате, а в том, чтобы синтаксис максимально соответствовал идиоме
Не, я вот сейчас прочитал диалог, декларативность, единый язык для описания данных что подойдёт всем и т.д. Очередная попытка изобрести гипертекст
источник