История изменений
Исправление wandrien, (текущая версия) :
Переделывать я, конечно, не буду от того, что «анону на лоре что-то не понравилось». А вот поговорить о синтаксических формах - всегда пожалуйста. С одной стороны, другие люди могут мне сообщить интересные идеи, решения или намётки решений. С другой стороны, это позволяет лучше увидеть что именно я сам понимаю, а вот собеседники не особо понимают.
Относительно второго, вот это характерная штука: «На самом деле я терпимо отношусь к алгольщине.»
Фишка-то в том, что это как раз не алгольщина. Если брать синтаксические формы, то алгольщина - это Алгол, Паскаль и… внезапно Си и всего его деривативы.
Си воспроизводит структуру форм Алгола почти дословно. С разницей всего в одну лишнюю лексему. (У Си на 1 одну лексему больше).
Алгол:
WHILE усл DO утвержд
Си:
while ( усл ) утвержд
Алгол:
IF усл THEN утвержд
Си:
if ( усл ) утвержд
Алгол:
BEGIN утвержд... END
Си:
{ утвержд... }
Как видно, открывающая круглая скобка у Си избыточна и добавлена чисто «для красоты». А в остальном это то же самое.
И если, например, брать Паскаль, то меня всегда раздражало, что при описании алгоритмов это просто «Си, в котором надо печатать больше букв». А зачем печать больше букв, если при прочих равных можно печатать меньше?
В то же время языки Ada, Ruby, Lua или вот Qod используют структуру с имплицитным блоком. Блок утверждений внедрён в составное утверждение по умолчанию, и его не требуется отдельно «начинать» и «завершать». Когда завершается синтаксическая форма, завершается и вложенный блок. Это решает проблему висячего else, делает код более выразительным и «плотным», а также (опционально) позволяет надёжно проверять границы блоков.
Классическое: «Буквы другие, смысл тот же» vs «Буквы те же, смысл другой».
Исправление wandrien, :
Переделывать я, конечно, не буду от того, что «анону на лоре что-то не понравилось». А вот поговорить о синтаксических формах - всегда пожалуйста. С одной стороны, другие люди могут мне сообщить интересные идеи, решения или намётки решений. С другой стороны, это позволяет лучше увидеть что именно я сам понимаю, а вот собеседники не особо понимают.
Относительно второго, вот это характерная штука: «На самом деле я терпимо отношусь к алгольщине.»
Фишка-то в том, что это как раз не алгольщина. Если брать синтаксические формы, то алгольщина - это Алгол, Паскаль и… внезапно Си и всего его деривативы.
Си воспроизводит структуру форм Алгола почти дословно. С разницей всего в одну лишнюю лексему. (У Си на 1 одну лексему больше).
Алгол:
WHILE усл DO утвержд
Си:
while ( усл ) утвержд
Алгол:
IF усл THEN утвержд
Си:
if ( усл ) утвержд
Алгол:
BEGIN утвержд... END
Си:
{ утвержд... }
Как видно, открывающая круглая скобка у Си избыточна и добавлена чисто «для красоты». А в остальном это то же самое.
И если, например, брать Паскаль, то меня всегда раздражало, что при описании алгоритмов это просто «Си, в котором надо печатать больше букв». А зачем печать больше букв, если при прочих равных можно печатать меньше?
В то же время языки Ada, Ruby, Lua или вот Qod используют структуру с имплицитным блоком. Блок утверждений внедрён в составное утверждение по умолчанию, и его не требуется отдельно «начинать» и «завершать». Когда завершается синтаксическая форма, завершается и вложенный блок. Это решает проблему висячего else, делает код более выразительным и «плотным», а также (опционально) позволяет надёжно проверять границы блоков.
Классическое: «Буквы другие смысл тот же» vs «Буквы те же, смысл другой».
Исправление wandrien, :
Переделывать я, конечно, не буду от того, что «анону на лоре что-то не понравилось». А вот поговорить о синтаксических формах - всегда пожалуйста. С одной стороны, другие люди могут мне сообщить интересные идеи, решения или намётки решений. С другой стороны, это позволяет лучше увидеть что именно я сам понимаю, а вот собеседники люди не особо понимают.
Относительно второго, вот это характерная штука: «На самом деле я терпимо отношусь к алгольщине.»
Фишка-то в том, что это как раз не алгольщина. Если брать синтаксические формы, то алгольщина - это Алгол, Паскаль и… внезапно Си и всего его деривативы.
Си воспроизводит структуру форм Алгола почти дословно. С разницей всего в одну лишнюю лексему. (У Си на 1 одну лексему больше).
Алгол:
WHILE усл DO утвержд
Си:
while ( усл ) утвержд
Алгол:
IF усл THEN утвержд
Си:
if ( усл ) утвержд
Алгол:
BEGIN утвержд... END
Си:
{ утвержд... }
Как видно, открывающая круглая скобка у Си избыточна и добавлена чисто «для красоты». А в остальном это то же самое.
И если, например, брать Паскаль, то меня всегда раздражало, что при описании алгоритмов это просто «Си, в котором надо печатать больше букв». А зачем печать больше букв, если при прочих равных можно печатать меньше?
В то же время языки Ada, Ruby, Lua или вот Qod используют структуру с имплицитным блоком. Блок утверждений внедрён в составное утверждение по умолчанию, и его не требуется отдельно «начинать» и «завершать». Когда завершается синтаксическая форма, завершается и вложенный блок. Это решает проблему висячего else, делает код более выразительным и «плотным», а также (опционально) позволяет надёжно проверять границы блоков.
Классическое: «Буквы другие смысл тот же» vs «Буквы те же, смысл другой».
Исходная версия wandrien, :
Переделывать я, конечно, не буду от того, что «анону на лоре что-то не понравилось». А вот поговорить о синтаксических формах - вседа пожалуйста. С одной стороны, другие люди могут мне сообщить интересные идеи, решения или намётки решений. С другой стороны, это позволяет лучше увидеть что именно я сам понимаю, а вот собеседники люди не особо понимают.
Относительно второго, вот это характерная штука: «На самом деле я терпимо отношусь к алгольщине.»
Фишка-то в том, что это как раз не алгольщина. Если брать синтаксические формы, то алгольщина - это Алгол, Паскаль и… внезапно Си и всего его деривативы.
Си воспроизводит структуру форм Алгола почти дословно. С разницей всего в одну лишнюю лексему. (У Си на 1 одну лексему больше).
Алгол:
WHILE усл DO утвержд
Си:
while ( усл ) утвержд
Алгол:
IF усл THEN утвержд
Си:
if ( усл ) утвержд
Алгол:
BEGIN утвержд... END
Си:
{ утвержд... }
Как видно, открывающая круглая скобка у Си избыточна и добавлена чисто «для красоты». А в остальном это то же самое.
И если, например, брать Паскаль, то меня всегда раздражало, что при описании алгоритмов это просто «Си, в котором надо печатать больше букв». А зачем печать больше букв, если при прочих равных можно печатать меньше?
В то же время языки Ada, Ruby, Lua или вот Qod используют структуру с имплицитным блоком. Блок утверждений внедрён в составное утверждение по умолчанию, и его не требуется отдельно «начинать» и «завершать». Когда завершается синтаксическая форма, завершается и вложенный блок. Это решает проблему висячего else, делает код более выразительным и «плотным», а также (опционально) позволяет надёжно проверять границы блоков.
Классическое: «Буквы другие смысл тот же» vs «Буквы те же, смысл другой».