Cobra (язык программирования) - Cobra (programming language)
Парадигма | Мультипарадигма : объектно-ориентированный |
---|---|
Разработано | Чарльз Эстербрук |
Разработчик | Cobra Language LLC |
Впервые появился | 2006 |
Окончательный релиз | 0.9.6 / 23 декабря 2013 г .
|
Печатная дисциплина | сильный , статический , динамичный , предполагаемый |
Операционные системы | Microsoft .NET , Mono |
Лицензия | Массачусетский технологический институт |
Расширения имени файла | .cobra |
Веб-сайт | кобра-язык |
Под влиянием | |
Python , Eiffel , C # , Objective-C |
Кобра является прекращено общего назначения , объектно-ориентированного языка программирования . Cobra разработана Чарльзом Эстербруком и работает на платформах Microsoft .NET и Mono . На него сильно повлияли Python , C # , Eiffel , Objective-C и другие языки программирования. Он поддерживает как статическую, так и динамическую типизацию . Он поддерживает модульные тесты и контракты. В нем есть лямбда-выражения , замыкания, списки и генераторы .
Cobra - проект с открытым исходным кодом ; он был выпущен под лицензией MIT 29 февраля 2008 года.
Функции
- Объектно-ориентированный
- Контроль качества
-
- Контракты , утверждения
- Модульные тесты , строки документации
- Отслеживание нуля во время компиляции
- Выразительность
-
- Статическая и динамическая привязка
- Список, словарь и набор литералов
-
in
иimplies
оператор -
for
выражения - Нарезка
- Интерполированные строки
- Вывод типа во время компиляции
- Лямбды и замыкания
- Общая продуктивность
-
- Обработка исключений
- Отчет о посмертном исключении
- Вывоз мусора
- Удобства написания сценариев
-
- Чистый синтаксис
- Динамическое связывание
- Одношаговый бег
-
Линия Шебанга (
#!
)
- Разное
-
- Инструмент документации (
cobra -doc
) -
Инструмент выделения синтаксиса (
cobra -highlight
)
- Инструмент документации (
Примеры
Следующие примеры можно запустить из файла, используя .
cobra <filename>
Привет, мир
class Hello
def main
print 'HELLO WORLD'
Простой класс
class Person
var _name as String
var _age as int
cue init(name as String, age as int)
_name, _age = name, age
def toString as String is override
return 'My name is [_name] and I am [_age] years old'
использованная литература
внешние ссылки
- Официальный веб-сайт
- Блог Чарльза Эстербрука Cobra
- Индекс новостей Cobra