Cyclone (язык программирования)
| Файл:Cyclone logo.jpg | |
| Семантика: | |
|---|---|
| Тип исполнения: | |
| Появился в: |
2001 г. |
| Автор(ы): |
AT&T в сотрудничестве с рядом университетов |
| Типизация данных: |
строгая, статическая |
| Испытал влияние: | |
Cyclone (читается «Си-клон» или «Циклон») — язык программирования, предназначенный для замены чистого, не объектно-ориентированного C в областях, где его применение традиционно и оправданно (системное программирование, программирование микроконтроллеров). Основная цель разработки — сделать программы на Си более защищённым от ошибок и уязвимостей, таких, как печально известное переполнение буфера, при минимальной потере эффективности и с сохранением преемственности. Идея заключается в том, чтобы взять средства эффективной защиты у языков высокого уровня и внедрить их в язык более низкого уровня.
Основы разработки были заложены Дэном Гроссманом, Тревором Джимом, и Грегом Моррисеттом в Корнелльском Университете при проектировании и реализации языка ассемблера со строгой типизацией TAL (Typed Assembly Language).
Cyclone отличают от Си прежде всего более строгая типизация, и при необходимости, введение runtime проверок, например, за соблюдением границ массива. Значительно расширена и формализована работа с указателями, тем не менее привычные си-программистам приёмы адресной арифметики продолжают работать. В язык добавлено множество удобных особенностей из C++, C99 и GCC. Введён новый тип данных @tagged union — аналог c-union, сохраняющий информацию о том, данные какого типа он хранит в данный момент.
Самые большие нововведения связаны с заимствованием идей по работе с типами данных из языка ML. Это гибкая система статической типизации, облегчающая описание различных рекурсивных структур (списков, деревьев и т. п.) и позволяющих использовать полиморфизм и обобщённое программирование. Программист может полностью контролировать процесс сопоставление типов в Cyclone
Новый язык очень близок к C, что позволяет с минимальными усилиями переносить на него написанные на C приложения. На сегодняшний день создателям Cyclone удалось разработать простой веб-сервер, который, по их словам, совершенно невосприимчив к обычным ошибкам и уязвимостям.
Версия компилятора 1.0 вышла в 8 мая 2006.
Источники
- Cyclone User Manual
- Cyclone: a Type-safe Dialect of C by Dan Grossman, Michael Hicks, Trevor Jim, and Greg Morrisett — published January 2005
- Cyclone: A Safe Dialect of C Страничка AT&T посвящённая Cyclone
Ссылки
- cyclone.thelanguage.org — Официальный сайт.
- www.eecs.harvard.edu/~greg/cyclone/old_cyclone.html — старая версия официального сайта.
Основные языки программирования (список • сравнение • IDE • история • хронология) |
|
|---|---|
| Используемые в разработке |
Ада • АПЛ • Ассемблер • ActionScript • ABAP/4 • AutoIt • AWK • BASIC • C • Кобол • C++ • C# • ColdFusion • Common Lisp • D • dBase • Delphi • Eiffel • Erlang • F# • Forth • Фортран • Gambas • Groovy • Haskell • Icon • Java • JavaScript • Limbo • Lua • MATLAB • Object Pascal • Objective-C • OCaml • Oz • Оберон • Parser • Паскаль • Perl • PHP • PowerBASIC • PureBasic • Python • ПЛ/1 • Пролог • Ruby • Scala • Scheme • Smalltalk • SQL • PL/SQL • Tcl • Vala • Visual Basic • VB.NET |
| Академические | |
| IEC61131-3 |
Instruction List • ST • FBD • Ladder Diagram • SFC |
| Прочие | |
| Эзотерические | |
| SQL | Это незавершённая статья о компьютерных языках. Вы можете помочь проекту, исправив и дополнив её. |
ca:Cyclone de:Cyclone en:Cyclone (programming language) pl:Cyclone
Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....