История изменений
Исправление no-such-file, (текущая версия) :
Покажешь хоть одного первокласcника, который сможет объяснить как работает
Ты ничего не понял. Разумеется даже на самых простых принципах, если они позволяют композицию, можно, постепенно углубляясь, делать сложные вещи. Но это будет очень подробно, многословно и неэлегантно. Что как раз и демонстрирует твой пример. Сравнивать концептуально сложные языки с лиспом, всё равно что сравнивать сложный матан с естественным языком. Уравнение Шрёдингера на этом матане записывается одной строчкой, но понять его могут не только лишь все. А вот на русском тоже самое рассказать и объяснить вполне возможно любому проходимцу без специальных знаний закорючек.
Посмотри на это с другой стороны. Вот есть ядро линукс, сложная программа на миллионы строк, написанная на очень простом языке. Объём её однако так велик, что нет ни одного человека, который может осмыслить весь этот код как единое целое и «знать» его до последней точки. Предположим что мы придумаем какой-то хороший язык, так что на нём всю эту сложную программу можно будет выразить в 10к строк. Казалось бы такой объём для одного человека уже посилен. Так вот мой тезис в том, что сложность программы при этом не уменьшится и количество усилий для её понимания тоже, поэтому осмыслить эти 10к всё равно не получится, а язык будет неизбежно сложным настолько, что для осмысления даже одного выражения нужно будет медитировать пару месяцев, как над пониманием сложной математической теоремы.
Если же использовать язык попроще, то да будет больше писанины, возни с деталями, костылей и т.д. но каждая отдельная строка при этом легко осмыслима. Строчка за строчкой в этом можно разобраться настолько, насколько это необходимо в конкретной ситуации. Не требуется осознавать сущности сразу целиком во всей их полноте.
Haskell на порядок проще: у любой функции только один аргумент и только один результат
А ещё там ленивость, АТД, монады и чёрт в ступе.
Исходная версия no-such-file, :
Покажешь хоть одного первокласcника, который сможет объяснить как работает
Ты ничего не понял. Разумеется даже на самых простых принципах, если они позволяют композицию, можно, постепенно углубляясь, делать сложные вещи. Но это будет очень подробно, многословно и неэлегантно. Что как раз и демонстрирует твой пример. Сравнивать концептуально сложные языки с лиспом, всё равно что сравнивать сложный матан с естественным языком. Уравнение Шрёдингера на этом матане записывается одной строчкой, но понять его могут не только лишь все. А вот на русском тоже самое рассказать и объяснить вполне возможно любому проходимцу без специальных знаний закорючек.
Посмотри на это с другой стороны. Вот есть ядро линукс, сложная программа на миллионы строк, написанная на очень простом языке. Объём её однако так велик, что нет ни одного человека, которые может осмыслить весь этот код как единое целое и «знать» его до последней точки. Предположим что мы придумаем какой-то хороший язык, так что на нём всю эту сложную программу можно будет выразить в 10к строк. Казалось бы такой объём для одного человека уже посилен. Так вот мой тезис в том, что сложность программы при этом не уменьшится и количество усилий для её понимания тоже, поэтому осмыслить эти 10к всё равно не получится, а язык будет неизбежно сложным настолько, что для осмысления даже одного выражения нужно будет медитировать пару месяцев, как над пониманием сложной математической теоремы.
Если же использовать язык попроще, то да будет больше писанины, возни с деталями, костылей и т.д. но каждая отдельная строка при этом легко осмыслима. Строчка за строчкой в этом можно разобраться настолько, насколько это необходимо в конкретной ситуации. Не требуется осознавать сущности сразу целиком во всей их полноте.
Haskell на порядок проще: у любой функции только один аргумент и только один результат
А ещё там ленивость, АТД, монады и чёрт в ступе.