Здравствуйте, Klapaucius, Вы писали:
C>>ML разрабатывался в конце 70-х годов. На примере ML обычно обкатывались алгоритмы GC и других способов управления памятью (типа region inference).
K>Ну да. ФЯ очень любят возраст натягивать. ML разрабатывался, разрабатывался и разработался как следует только к началу 90-х. При этом алгебраические типы и паттерн-матчинг для которых он якобы "является "родиной"" (кавычки поставлены не зря) попали в него из другого языка (Hope, если интересно).
"Родину" в кавычки я сам поставил. Но таки ML-семейство сделало их популярными.
K>А region inference вовсе в 2000-ных обкатывали.
Конец 80-х:
http://en.wikipedia.org/wiki/Region-based_memory_management#Region_inference
K>Это, впрочем, пустяки по сравнению с хаскелем, который считается "разработанным" прямо с того момента, когда Худак и Пейтон-Джонс решили сообразить на троих с Тернером, да только тот отказался. Так что в этом треде хаскель уже оказывается ровестником оберона.
Оберон может быть немного моложе, но не сильно.
C>>Так, а теперь вопрос ребром:
C>>ГДЕ КОД НА ОБЕРОНЕ?
K>А разгадка проста: в "космических разработках" действительно применяют, насколько я знаю, язык Modula-2. Для которого действительно существуют (до сих пор) компиляторы промышленногог качества типа XDS.
Про Модулу-2 вопросов как раз нет. Но у меня большие сомнения, что используется именно Оберон, так как он сильно заточен на динамическую память и GC.
К примеру, поддерживаемых компиляторов Оберона в природе сейчас не находится.
C>>ML-семейство — они обратно совместимы.
K>Нет, не совместимы. Правда, зависит от того, что считать ML-семейством.
Семейство SML. Понятно, что .NET-вариации не будут совместимы. Ну и Хаскелл — это нифига таки не ML.