BitC (BitC)

Перейти к навигации Перейти к поиску
BitC
Класс языка язык программирования и процедурный язык программирования
Автор Jonathan S. Shapiro, Swaroop Sridhar и M. Scott Doerrie
Разработчик Johns Hopkins University, The EROS Group, LLC
Выпуск BitCC 0.9.1 (2006-02-17)
Тестовая версия BitC 0.11+ Transitional (2008-09-28)
Испытал влияние Си, ML/Haskell, Scheme[1]
Лицензия BSD
Сайт bitc-lang.org

BitC — язык системного программирования, разработанный исследователями Университета Джонса Хопкинса и The EROS Group как часть проекта Coyotos[англ.]. Типобезопасен, ориентирован на разработку надёжных (верифицируемых) встраиваемых систем, драйверов и других задач системного программирования.

Язык создавался с целью решить две основные задачи:

  1. Объединить достижения современных языков программирования при сохранении производительности языка Си.
  2. Упростить верификацию низкоуровневых программ, таких как ядро/микроядро операционной системы.

Достижения

[править | править код]

На данный момент на BitC возможно реализовать MPEG-декодер или алгоритм криптографического хеширования SHA-1, которые будут иметь доказанную безопасность, и при этом соперничать в быстродействии с реализацией на Си. Этого невозможно добиться на Standard ML, OCaml или Haskell.[2][аффилированный источник?]

В апреле 2009 года главный разработчик, Джонатан Шапиро[3], объявил, что принял предложение Microsoft по работе над операционной системой Midori и в августе прекратит работу над языком программирования[4]. В марте 2010 года он объявил, что покидает Microsoft и продолжит работу над BitC[5]. Однако, в марте 2012 он сообщил, что окончательно прекращает разработку, так как язык имеет фундаментальные ошибки в дизайне и в текущем виде работать не будет[6]. 26 февраля 2015 года на официальном сайте было объявлено о работе над версией 0.2 спецификации языка[7].

Примечания

[править | править код]
  1. The BitC Programming Language. — «BitC is a new systems programming language. It seeks to combine the flexibility, safety, and richness of Standard ML or Haskell with the low-level expressiveness of C. ... BitC has just made a transition from a LISP-like (s-expression) syntax to a more conventional syntax.» (недоступная ссылка)
  2. ChampReview.
  3. История проекта Coyotos Архивировано 1 августа 2012 года.
  4. [bitc-dev] Where Has shap Been Hiding? Архивировано 3 августа 2012 года.. Coyotos.org. Retrieved on 2013-07-21.
  5. [bitc-dev] Reviewing the state of BitC Архивировано 14 апреля 2013 года.. Coyotos.org. Retrieved on 2013-07-21.
  6. [bitc-dev] Retrospective Thoughts on BitC Архивная копия от 22 июня 2012 на Wayback Machine. Coyotos.org. Retrieved on 2013-07-21.
  7. Draft Bitc Specitication Архивировано 2 апреля 2015 года.