Левенчук пишет, что все серьёзные программисты мечтают программировать на фукнциональных языках. Не знаю, как серьёзные, а у меня лично никогда желания программировать на Лиспе не возникало. Нечеловеческий он какой-то. Пусть ворлоны на нём программируют.
Tags:
no subject
а. мне так не показалось.
но в таком виде мысль бредовая, сто пудов.
> легко структутированый текст, наоборот - в форме, указаной выше.
лёгкость тут лишь кажущаяся, ибо синтаксис здесь, при всей своей привычной алгебраичности, неиллюзорен и неопционален (и при небольшом усложнении кода лёгкость исчезнет напрочь — стоит лишь появиться необходимости устранить возможную двусмысленность. вспомни любой нетривиальный макрос для C-препроцессора, к примеру). но в целом — дело вкуса, спорить не с чем.
> снаружи я хочу видеть их так, как мне удобнее думать.
это очень правильно.
> мне неудобно думать в терминах списков и S-выражений. Возможно, это с непривычки - но неудобно.
а зачем думать в терминах списков и S-выражений? это всего лишь синтаксис, в его терминах думать не требуется (с непривычки приходится, да, но это ненадолго. причём сие касается любого непатологического синтаксиса, не только S-выражений).
no subject
Препроцессор C сделан для весьма узкого класса задач, и выход за пределы этого класса даёт не всегда хорошие результаты. Собственно, все макросы в C по идее должны быть более-менее тривиальны - исключая, возможно, всякие макросы-оптимизации типа замены memcpy и прочую требуху, которую никто видеть никогда не должен.
а зачем думать в терминах списков и S-выражений?
Ну, мне в тобой же порекомендованом учебнике первым делом рассказывают именно об этом. Но я согласен - вовсе не обязательно, да. Однако если язык на этом построен - то это некоторым образом стимулирует думать в эту сторону.
no subject
я перевожу: синтаксис языка Ц расширять трудно, поэтому никто этим не занимается. а поскольку никто в языке Ц этим не занимается, то значит и надобности нету.
[ тип тебе на будущие споры: надо вместо этого говорить, что вообще-то необходимость расширять синтаксис языка нормальному человеку и в голову-то не придёт. что есть чистая правда, если нормой считать средний статистический уровень современных айтишников. ]
> Но я согласен - вовсе не обязательно, да. Однако если язык на этом построен - то это некоторым образом стимулирует думать в эту сторону.
не совсем понял мысль. вот ежели тебе в голову приходит идея написать на языке Ц, скажем, функцию сложения двух чисел, то ты что же, немедленно начинаешь судорожно вспоминать где там надо фигурную скобку рисовать? ведь нет же, ты просто берёшь и пишешь эту самую функцию, если конечно не познакомился с языком Ц десять минут назад.
no subject
Я не говорил, что надобности нету. Я говорил, что препроцессор для этого - херовый инструмент. Вот lex/yacc, например - инструмент получше :)
не совсем понял мысль. вот ежели тебе в голову приходит идея написать на языке Ц, скажем, функцию сложения двух чисел, то ты что же, немедленно начинаешь судорожно вспоминать где там надо фигурную скобку рисовать?
Сложение двух чисел - слишком плохой пример, чтобы продемонстрировать различие подходов. Хороший пример - это решение нетривиальной задачи.
no subject
и каким, простите, боком lex/yacc расширяет синтаксис языка Ц?
> Сложение двух чисел - слишком плохой пример, чтобы продемонстрировать различие подходов. Хороший пример - это решение нетривиальной задачи.
чем менее тривиальна задача, тем менее важен синтаксис.
что, впрочем, к делу не относится.
к делу относится следующее: ты говоришь "но мне этот синтаксис не кажется естественным!". тебе говорят: "ясен пень, не кажется. он же для тебя непривычен." ты отвечаешь: "но он неестественный!".
ну и что тут можно ещё добавить? ну неестественный он, точно. ты прав, а я инопланетянин. заниматься маркетингом в тяжёлой форме я не собирался и не намерен. на дальнейший флейм можешь вон того юного академического юберменша разводить, он неплохо поддаётся.
а если действительно интересно, то я тебе ссылку на хорошую книжку дал.
no subject
Это зависит от того, что конкретно надо делать. Если задача в том, что в руках есть Ц, а надо понимать такой-то язык - то нужен yacc. Если задача в том, чтобы в Ц добавить конструкцию типа do-until вместо do-while - то это никому не надо :)
к делу относится следующее: ты говоришь "но мне этот синтаксис не кажется естественным!". тебе говорят: "ясен пень, не кажется. он же для тебя непривычен.
Ну, в общем-то, да. Я согласен, дело привычки. Но привычка пошла не из Ц, думается мне, 2+2 всё-таки ещё в школе учат, а (+ 2 2) только в универистете :)
на дальнейший флейм можешь вон того юного академического юберменша разводить, он неплохо поддаётся.
Я его, увы, лишил возможности разводить флейм. Уж больно бурный. Да и какой флейм-то? Я ж не говорю, что Лисп, упаси Боже, плохой или непригодный. Надо будет на Лиспе писать - напишем и на Лиспе. И не на таком писали.
а если действительно интересно, то я тебе ссылку на хорошую книжку дал.
Книжка само собой, я её и читаю потихоньку.