Тоже, кстати, используется в основном в качестве нормативного документа, когда язык уже более или менее знаешь, но забыл где-нибудь порядок аргументов и т.п. Учиться лучше по Грэму, или по Зейбелю, или по Норвигу.
Конечно, Лисп как язык устроен в целом на порядок разумней крестов, так что и стандарт у него, соответственно, более вразумительный. Но это не к авторам стандарта претензии.
Думаю, что уважаемому хозяину дневника не нужно учиться ни сиплюсплюсу, ни Лиспу.
Но Лисп, подобно сиплюсплюсу - наслоение разных уровней, созданных в разные десятилетия с различными целями. PROG, CLOS, макросы - все это плохо скоординированные друг с другом механизмы, созданные различными людьми с многолетней разницей, подобно template-ам, множественному наследованию и bit fields в сиплюсплюсе.
Думаю, что уважаемому хозяину дневника не нужно учиться ни сиплюсплюсу, ни Лиспу.
Нимало в этом не сомневаюсь. Здесь речь о другом, о функции стандарта как документа. Именно, это контракт между разработчиками инфраструктур языка и программистами на языке. Разработчики обязуются предоставлять программистам такие-то языковые средства, гарантированно ведущие себя таким-то образом. Взамен программисты обязуются писать в рамках ограничений, налагаемых стандартом. Так что это документ отчасти юридический, и неизбежно несёт черты соответствующего стиля (ISO-шные стандарты в этом отношении ещё более мрачны).
<…> PROG, CLOS, макросы - все это плохо скоординированные друг с другом механизмы, созданные различными людьми с многолетней разницей, подобно template-ам, множественному наследованию и bit fields в сиплюсплюсе.
А как именно ты бы хотел улучшить координацию между, скажем, CLOS-ом и макросами? Макросы штука довольно-таки тупая: им даёшь один код на входе, производишь заданные преобразования над синтаксическим деревом, получаешь другой код на выходе. Код может быть любой, в том числе CLOS-овый, его синтаксическая структура ничем от обычной не отличается: атомы + списки, этим в основном всё и исчерпывается. (Аналогичный вопрос про кресты я не задаю, так как в них не достаточно разбираюсь.)
> А как именно ты бы хотел улучшить координацию между, скажем, CLOS-ом и макросами?
у многих людей есть в жизни такая проблема: они знают, что их работа могла бы быть куда приятнее, нежели. например, они имеют несчастье быть знакомы с нормальными языками программирования (и имеют достаточно вкуса, чтобы понять чем нормальный язык отличается от обычного), но вынуждены пользоваться всякой бякой типа "сиплюсплюса".
одним из наиболее распространённых способов убедить себя в зелёном цвете винограда, свойственных подобного рода умным людям, является подобного рода идиотское эстетство.
no subject
Date: 2005-01-20 06:55 pm (UTC)no subject
Date: 2005-01-20 07:29 pm (UTC)Конечно, Лисп как язык устроен в целом на порядок разумней крестов, так что и стандарт у него, соответственно, более вразумительный. Но это не к авторам стандарта претензии.
no subject
Date: 2005-01-20 07:40 pm (UTC)Но Лисп, подобно сиплюсплюсу - наслоение разных уровней, созданных в разные десятилетия с различными целями. PROG, CLOS, макросы - все это плохо скоординированные друг с другом механизмы, созданные различными людьми с многолетней разницей, подобно template-ам, множественному наследованию и bit fields в сиплюсплюсе.
no subject
Date: 2005-01-20 09:19 pm (UTC)Нимало в этом не сомневаюсь. Здесь речь о другом, о функции стандарта как документа. Именно, это контракт между разработчиками инфраструктур языка и программистами на языке. Разработчики обязуются предоставлять программистам такие-то языковые средства, гарантированно ведущие себя таким-то образом. Взамен программисты обязуются писать в рамках ограничений, налагаемых стандартом. Так что это документ отчасти юридический, и неизбежно несёт черты соответствующего стиля (ISO-шные стандарты в этом отношении ещё более мрачны).
А как именно ты бы хотел улучшить координацию между, скажем, CLOS-ом и макросами? Макросы штука довольно-таки тупая: им даёшь один код на входе, производишь заданные преобразования над синтаксическим деревом, получаешь другой код на выходе. Код может быть любой, в том числе CLOS-овый, его синтаксическая структура ничем от обычной не отличается: атомы + списки, этим в основном всё и исчерпывается. (Аналогичный вопрос про кресты я не задаю, так как в них не достаточно разбираюсь.)
no subject
у многих людей есть в жизни такая проблема: они знают, что их работа могла бы быть куда приятнее, нежели.
например, они имеют несчастье быть знакомы с нормальными языками программирования (и имеют достаточно вкуса, чтобы понять чем нормальный язык отличается от обычного), но вынуждены пользоваться всякой бякой типа "сиплюсплюса".
одним из наиболее распространённых способов убедить себя в зелёном цвете винограда, свойственных подобного рода умным людям, является подобного рода идиотское эстетство.
(мне очень не хватает Эрика Наггума, доктор).
quod licet
Но это не повод ему уподобляться.
Re: quod licet
Date: 2005-01-21 01:49 pm (UTC)постфактум обратил внимание.