Олег тут почитал
вот это про
Максима и их наработки в synrc
и прифигел, а я хочу заметить, что это очень показательный пример:
Чтобы сделать что-то существенное, не обязательно нужно много кода.
Если взять язык, в котором почти ничего нет (Эрленг), то кода автоматически будет получаться мало - логично. Неочевидно, что это не обязательно идет в
(
Read more... )
Comments 47
А на практике есть целый класс систем, которые очень трудно разбить на какие-то переиспользуемые "примитивы". Те же компиляторы -- очень плохой пример. Можно ещё вспомнить операционные системы, браузеры, sql базы данных: всё это большие монолитные системы, отдельные части которых чаще всего отдельно от проекта не имеют смысла.
Кстати, мне не очевидна прямая связь количества строк кода и простоты. Можно написать очень сложный для понимания/модификации код, который при этом будет довольно небольшим. А при помощи кодогенерации можно получить огромные исходники. При этом во втором случае возможно, что изменения будет внести проще, чем в первом.
Reply
Писать компиляторы на Эрланге/Хаскеле/Окамле - хорошо, приятно, быстро. Писать компиляторы на Си - плохо, криво, и долго.
Reply
Про количество кода в скале уже было сказано. Код ghc компилятора содержит 150k строк кода. Паттерн матчинг в этих языках, я напомню, есть.
Reply
Reply
Для такого маленького языка, тем более лиспа, это очень очень много. Тем более поверх готовой ВМ, когда не надо с нуля писать свой GC и пр.
Базовый лисп же в сотню строк умещается.
Что до maxim'a, я знаю истинную причину лаконичности и простоты его решений: он все пишет в MC editor'e, писать много букв там не получится, руки и глаза отвалятся. Язык тут не при чем. :)
Reply
Так и запишем: в CouchDB более 40К строк, и более половины кода на баше.
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Leave a comment