Марк Джоунз из Университета Портленда
рассказал в своей презентации о языке Habit, который является частью проекта
HASP (High-Assurance Systems Programming), проводимого в этом университете совместно с Galois и нацеленного на системное программирование с высокой степенью гарантий (если такой перевод будет достаточно точен).
На мой взгляд, довольно интересный рассказ о небезынтересном языке. Язык же этот — диалект хаскеля (ранее назывался Systems Haskell), который включает в себя целый ряд изменений, нацеленных именно на "системное" применение. Например, можно упомянуть, что ленивость была отвергнута, а также добавлены частично зависимые типы (как минимум добавлено 2 kind'а — nat для целых чисел и area для областей памяти).
К сожалению рабочего варианта компилятора пока нет, есть только
preliminary report.
Здравствуйте, Курилка, Вы писали:
К>На мой взгляд, довольно интересный рассказ о небезынтересном языке. Язык же этот — диалект хаскеля (ранее назывался Systems Haskell), который включает в себя целый ряд изменений, нацеленных именно на "системное" применение. Например, можно упомянуть, что ленивость была отвергнута, а также добавлены частично зависимые типы (как минимум добавлено 2 kind'а — nat для целых чисел и area для областей памяти).
К>К сожалению рабочего варианта компилятора пока нет, есть только preliminary report.
Язык безусловно очень интересный. Но настораживают два момента (настораживать стали после того, как бегло просмотрел оный preliminary report):
1) Мне показалось что оные area, а соответственно и Array и struct там размещаемы только статически. Т.е. динамически память таким образом там не выделить. Я не прав?
2) Доступ к элементам массива, насколько я понял из репорта, также исключительно по ссылке... Если массив у нас таки состоит из примитивных типов вроде word'a, то как-то указатели лишний раз туда-сюда гонять не слишком кошерно.