wizzard: (Default)
wizzard ([personal profile] wizzard) wrote2009-09-14 06:42 pm

naive typing ©

тем временем я все более и более прихожу к выводу что наличие массивов в языке как встроенных типов, а не библиотеки, есть жуткая ересь

[identity profile] dark-aurel.livejournal.com 2009-09-14 09:15 pm (UTC)(link)
легче работать с таким, когда всякие множества-очереди-стеки-хешмапы-массивы-двусвязные списки-сортировки отделены от внутренностей транслятора

Всё-равно не вижу противоречия. Как изменится реализация от множеств-очереди-etc в зависимости от наличия/отсутствия встроенного типа "массив" (кстати, если будет встроенный список -- тоже нормально)?

Понятно, что наличие такого встроенного типа несколько усложняет транслятор. Но есть мнение что профит от краткого синтаксиса оказажется более весомым, нежели это усложнение.

(with-troll-mode (:fat t)
Хотя в правильных языках мы всегда можем добавить нужную нам языковую конструкцию средствами самого языка... )

[identity profile] thedeemon.livejournal.com 2009-09-15 10:15 am (UTC)(link)
А можно примеров таких языков?

[identity profile] thedeemon.livejournal.com 2009-09-15 06:20 pm (UTC)(link)
И в них массивы - "это единственный "особенный" тип данных, ака тип с параметрическим полиморфизмом"?

[identity profile] nponeccop.livejournal.com 2009-09-15 07:58 pm (UTC)(link)
наоборот - в них массивы реализуются библиотекой и не имеют встроенного синтаксиса. Все остальные языки - языки, в которых массивы - "особенный" тип. Скажем, в традиционных алголообразах есть два особенных типа - структура и массив.

[identity profile] thedeemon.livejournal.com 2009-09-16 04:18 am (UTC)(link)
Вот я и просил примеры языков, где массивы - "это единственный "особенный" тип данных". Я таких не знаю. Не вижу, чем массив в этом аспекте отличается от, например, ссылки (полиморфизм присутствует, спец синтаксис тоже). А нередко кроме массивов есть встроенные в язык хэши и списки.