Comments 13
Я столкнулся со сходной проблемой в процессе разработки режима для ассемблера компьютера LGP-30. Интересно, есть ли где-то хорошие руководства по созданию режимов, своего рода "поваренная книга"?
Не попадалось, кроме сухой главы в руководстве на Emacs List.
В таком случае я думаю было бы полезно сделать что-то подобное.. Что если поработать над этим вместе?
Спасибо, не знал про с2lang. )Если есть желание и знание его, напишите, пожалуйста, статью с анализом, почему он лучше классического С и Zig.
А ещё лучше — большой и подробный обзор-сравнение всей этой плеяды современных «C-заменителей»: C2, C3, Carbon, D, Go, Hare, Jai, Odin, Rust, V, Zig, — из которых только Go и Rust более-менее смогли, Jai воду взбаламутил, но ещё даже не вышел в открытый доступ, а остальные варятся в собственном соку, т.е. внутри своих относительно небольших сообществ. И это я, наверняка, не все навал.
И да, все они в той или иной степени «лучше» классического C. По крайней мере, с точки зрения своих создателей. За все не скажу, но Zig, Odin и V вполне себе имеют «лица необщее выражение» и определённые амбиции. D, вот, свои амбиции так и не реализовал. Посмотрим, что получится у этих молодых да борзых. :)
Большинство из перечисленных смотрел. Столь обширный обзор сложно написать подробным, да и желательно во всё это сначала потыкать палкой (в хорошем смысле слова). В принципе, этот список можно сократить, так как некоторые не вполне замена C.
Согласен. Да и я это скорее просто показать автору комментария, на который я отвечал, что не только C2 и Zig пытаются «улучшить» C, что таких «улучшателей» не вагон, конечно, но вполне себе тележка наберётся. :)
Я пока более-менее «тыкал палкой» только V и Odin.
V — это даже не C, а скорее, Go с блекджеком и балеринами.
А Odin — слегка консервативный, но «дружелюбный сосед», надёргавший идей отовсюду и завернувший их в красивую и приятную (на мой вкус) обёртку. По духу, скорее, Паскаль напоминает (я не про синтаксис, а про общее ощущение от языка).
А не подскажите, не могу вспомнить название языка, в котором обобщённое программирование реализовано через создание типов во время компиляции (compile time generics)?
Не подскажу, ибо не копал в эту сторону.
Знаю, что, вроде бы, в Zig и в Nim с comptime-вычислениями всё хорошо. И буквально вчера смотрел, какие выкрутасы с comptime-ом Jai проделывает Tsonding (при том, что он это с наскоку и по верхам).
Ещё могу сказать, что в Odin-е довольно развесистые Reflections, но собственно comptime-а — по минимуму. А дженерики там не совсем дженерики, а parametric polymorphism.
Пожалуй обзор на C2 напишу попозже.
Создание режима GNU Emacs для C-подобного языка