Сообщение Re[12]: Почему программисты прошлого были умнее от 24.01.2026 0:07
Изменено 24.01.2026 0:28 vdimas
Re[12]: Почему программисты прошлого были умнее
Здравствуйте, Sinclair, Вы писали:
V>>Как и с размеченным объединением, вариант с динамической типизацией ужасен.
V>>Это ведь тоже две серьёзные инженерные ошибки, стоившие индустрии овердохера миллиардов...
S>Крайне спорное утверждение.
В смысле "спорное утверждение"?
А как же принцип подстановки Лисков?
(крутая женщина)
Это сразу на пересдачу...
S>Впрочем, если вам удастся его доказать, то вы опровергнете заглавную тему топика, т.к. эти "ошибки" как раз и были сделаны программистами прошлого, которые якобы были умнее
Дык, программисты прошлого придумали концепцию абстрактного итератора, чтобы не нарушался принцип подстановки.
Причём, в некоторых языках эта абстракция не имеет пенальти за абстракцию. ))
Начало 70-х годов, язык CLU:
замени $ на точку и получишь код, близкий к любому мейнстримовому современному языку.
А точно ли программисты прошлого было глупее? ))
Или это говорит невежество некоторых современных <даже не знаю как назвать>.
V>>И оно в любом случае не спасет, если объект был удалён, а ссылка на него еще есть — я ж сразу обращал внимание, что проблема валидной ссылки намного шире, и не ограничивается только null.
S>В Algol W это невозможно. Там нет способа "удалить объект".
Ага, точно!
Зато в наследнике-Паскале уже можно удалить.
Ну так ошибку на хреналлион денег совершил Вирт, а не Хоар, получается?
V>>Требуются совершенно другие техники. А полноценный GC на тот момент тупо не взлетел бы, бо ему требуется метаинформация над полями, это ж не Лисп с его парой {CAR, CDR}.
S>И тем не менее, в Algol W сборка мусора была.
Разве?
S>Выводы, сделанные на основе неверных предположений, поскипаны.
Пока что неверные предположения оказались у тебя.
Попробуй еще раз...
V>>Как и с размеченным объединением, вариант с динамической типизацией ужасен.
V>>Это ведь тоже две серьёзные инженерные ошибки, стоившие индустрии овердохера миллиардов...
S>Крайне спорное утверждение.
В смысле "спорное утверждение"?
А как же принцип подстановки Лисков?
(крутая женщина)
Это сразу на пересдачу...
S>Впрочем, если вам удастся его доказать, то вы опровергнете заглавную тему топика, т.к. эти "ошибки" как раз и были сделаны программистами прошлого, которые якобы были умнее
Дык, программисты прошлого придумали концепцию абстрактного итератора, чтобы не нарушался принцип подстановки.
Причём, в некоторых языках эта абстракция не имеет пенальти за абстракцию. ))
Начало 70-х годов, язык CLU:
list: int_list := int_list$create()
for item: int in int_list$elements(list) do
putl(stream_output, "Элемент: ", int$unparse(item))
endзамени $ на точку и получишь код, близкий к любому мейнстримовому современному языку.
А точно ли программисты прошлого было глупее? ))
Или это говорит невежество некоторых современных <даже не знаю как назвать>.
V>>И оно в любом случае не спасет, если объект был удалён, а ссылка на него еще есть — я ж сразу обращал внимание, что проблема валидной ссылки намного шире, и не ограничивается только null.
S>В Algol W это невозможно. Там нет способа "удалить объект".
Ага, точно!
Зато в наследнике-Паскале уже можно удалить.
Ну так ошибку на хреналлион денег совершил Вирт, а не Хоар, получается?
V>>Требуются совершенно другие техники. А полноценный GC на тот момент тупо не взлетел бы, бо ему требуется метаинформация над полями, это ж не Лисп с его парой {CAR, CDR}.
S>И тем не менее, в Algol W сборка мусора была.
Разве?
Прям почти моими словами, вау...В Algol W отсутствует встроенная сборка мусора.
Все источники единодушны в этом. При этом несколько документов подчёркивают, что это было осознанное архитектурное решение — для простоты реализации и эффективности на машинах 1960-х годов.
S>Выводы, сделанные на основе неверных предположений, поскипаны.
Пока что неверные предположения оказались у тебя.
Попробуй еще раз...
Re[12]: Почему программисты прошлого были умнее
Здравствуйте, Sinclair, Вы писали:
V>>Как и с размеченным объединением, вариант с динамической типизацией ужасен.
V>>Это ведь тоже две серьёзные инженерные ошибки, стоившие индустрии овердохера миллиардов...
S>Крайне спорное утверждение.
В смысле "спорное утверждение"?
А как же принцип подстановки Лисков?
(крутая женщина)
Это сразу на пересдачу...
S>Впрочем, если вам удастся его доказать, то вы опровергнете заглавную тему топика, т.к. эти "ошибки" как раз и были сделаны программистами прошлого, которые якобы были умнее
Дык, программисты прошлого придумали концепцию абстрактного итератора, чтобы не нарушался принцип подстановки.
Причём, в некоторых языках эта абстракция не имеет пенальти за абстракцию. ))
Начало 70-х годов, язык CLU:
замени $ на точку и получишь код, близкий к любому мейнстримовому современному языку.
А точно ли программисты прошлого было глупее? ))
Или это говорит невежество некоторых современных <даже не знаю как назвать>.
V>>И оно в любом случае не спасет, если объект был удалён, а ссылка на него еще есть — я ж сразу обращал внимание, что проблема валидной ссылки намного шире, и не ограничивается только null.
S>В Algol W это невозможно. Там нет способа "удалить объект".
Ага, точно!
Зато в наследнике-Паскале уже можно удалить.
Ну так ошибку на хреналлион денег совершил Вирт, а не Хоар, получается?
На самом деле никто из них, конечно же.
Решение это было очевидным и очень давним, задолго до них, ведь ЯП тех лет традиционно оформлялись как потребность ухода от ассемблера, но без потери эффективности или с минимальной такой потерей. В этом смысле Лиспы и прочие Прологи были сугубо прикладными языками, а вот Алголы и Ады — языками достаточно низкого (системного!) уровня, с соответствующими требованиями к ним.
V>>Требуются совершенно другие техники. А полноценный GC на тот момент тупо не взлетел бы, бо ему требуется метаинформация над полями, это ж не Лисп с его парой {CAR, CDR}.
S>И тем не менее, в Algol W сборка мусора была.
Разве?
S>Выводы, сделанные на основе неверных предположений, поскипаны.
Пока что неверные предположения оказались у тебя.
Попробуй еще раз...
V>>Как и с размеченным объединением, вариант с динамической типизацией ужасен.
V>>Это ведь тоже две серьёзные инженерные ошибки, стоившие индустрии овердохера миллиардов...
S>Крайне спорное утверждение.
В смысле "спорное утверждение"?
А как же принцип подстановки Лисков?
(крутая женщина)
Это сразу на пересдачу...
S>Впрочем, если вам удастся его доказать, то вы опровергнете заглавную тему топика, т.к. эти "ошибки" как раз и были сделаны программистами прошлого, которые якобы были умнее
Дык, программисты прошлого придумали концепцию абстрактного итератора, чтобы не нарушался принцип подстановки.
Причём, в некоторых языках эта абстракция не имеет пенальти за абстракцию. ))
Начало 70-х годов, язык CLU:
list: int_list := int_list$create()
for item: int in int_list$elements(list) do
putl(stream_output, "Элемент: ", int$unparse(item))
endзамени $ на точку и получишь код, близкий к любому мейнстримовому современному языку.
А точно ли программисты прошлого было глупее? ))
Или это говорит невежество некоторых современных <даже не знаю как назвать>.
V>>И оно в любом случае не спасет, если объект был удалён, а ссылка на него еще есть — я ж сразу обращал внимание, что проблема валидной ссылки намного шире, и не ограничивается только null.
S>В Algol W это невозможно. Там нет способа "удалить объект".
Ага, точно!
Зато в наследнике-Паскале уже можно удалить.
Ну так ошибку на хреналлион денег совершил Вирт, а не Хоар, получается?
На самом деле никто из них, конечно же.
Решение это было очевидным и очень давним, задолго до них, ведь ЯП тех лет традиционно оформлялись как потребность ухода от ассемблера, но без потери эффективности или с минимальной такой потерей. В этом смысле Лиспы и прочие Прологи были сугубо прикладными языками, а вот Алголы и Ады — языками достаточно низкого (системного!) уровня, с соответствующими требованиями к ним.
V>>Требуются совершенно другие техники. А полноценный GC на тот момент тупо не взлетел бы, бо ему требуется метаинформация над полями, это ж не Лисп с его парой {CAR, CDR}.
S>И тем не менее, в Algol W сборка мусора была.
Разве?
Прям почти моими словами, вау...В Algol W отсутствует встроенная сборка мусора.
Все источники единодушны в этом. При этом несколько документов подчёркивают, что это было осознанное архитектурное решение — для простоты реализации и эффективности на машинах 1960-х годов.
S>Выводы, сделанные на основе неверных предположений, поскипаны.
Пока что неверные предположения оказались у тебя.
Попробуй еще раз...