dmzlj -

топ 100 блогов dmzlj19.08.2010 Вот и первые проблемы начались. В языках с синтаксисом наличие жестко определенных типов вполне естественно --- есть синтаксические конструкции, есть типы данных, которые они порождают:

[a, b, c, ...]  ;;  список  TList(typeof(a))
(a,b,c)         ;; 3-кортеж TTuple(typeof(a), typeof(b), typeof(c))


допустим у нас язык без синтаксиса, и каждая конструкция имеет семантику вызова функции:

(list a b c d) ;; список
(tuple a b c)  ;; 3-кортеж


возникают следующие вопросы:

Если конструкторы данных --- это функции, то они должны иметь переменное количество параметров. Тогда как в определяемых функциях количество параметров может быть только фиксированным (вытекает из статической типизации).

Далее, если давать переопределять эти функции, то что происходит с типами данных, которые они возвращают? Количество основных типов, о которых знает компилятор и к которым сводятся остальные --- оно все равно фиксировано.

Даже если дать произвольно определять конструкторы, все равно должны быть какие-то вызовы, которые будут вызваны в этих конструкторах, что бы вернуть объект того или иного основного типа.

Если же не давать переопределять конструкторы данных, жестко определяя их синтаксис, то почему бы тогда не зафиксировать и остальные формы (define, let, if-then-else, etc), перекладывая проверку их корректности на парсер?

А можно еще рассматривать язык программирования как язык и API для генерации AST. Язык для генерации AST вполне может иметь семантические отличия от того языка, который представляетcя этим AST, т.е. например иметь динамическую типизацию и функции с переменным количеством параметров.

Оставить комментарий

Архив записей в блогах:
О танце – и Жан-Жорже Новерре Сегодня – Международный (или – Всемирный) День танца … потому скажем несколько слов о человеке, произведшем подлинную революцию в этом искусстве – тем более, что Жан-Жорж Новерр родился именно 29 апреля 1727 года – собственно, в его честь и ...
Оригинал взят у uncle_pafnutiy в Битва за Калязин Сегодняшнему Празднику посвящается. Праздник был установлен в память о событиях  1612 года, когда народное ополчение под предводительством Кузьмы Минина и Дмитрия Пожарского освободило Москву от польских интервентов. ...
В "Шереметьево" загребли вернувшегося в РФ Навального. Самолет коварно отправили вместо "Внуково" в "Шереметьево". Он шел на Одессу, а вышел к Херсону. Буду смеяться, если его снова отпустят под подписку о невыезде, как в прошлые разы. Но как знать, может быть наконец завяжут с этой ...
Первая, и главная проблема Китая — это китайский женщины. Вернее, даже не они, а их отсутствие. Объясняю. Все из-за шайтан-аппарата под названием УЗИ. Китайцы не хотят иметь ребенка-девочку. НЕ ХОТЯТ, и все тут. Врачам под угрозой лишения лицензии ЗАПРЕЩЕНО сообщать пол ребенка ...
Чем больше читаю сообщество, тем уверенней думаю о том, что синдром Каннера и синдром Аспергера всё-таки очень разные вещи. Я немного пока читал статей по аутизму (а видимо, предстоит; эх), но во всех этих статьях утверждается, что С.К. и С.А. это ...