Cobra is a discontinued general-purpose, object-oriented programming language. Cobra is designed by Charles Esterbrook, and runs on the Microsoft .NET and Mono platforms. It is strongly influenced by Python, C#, Eiffel, Objective-C, and other programming languages. It supports both static and dynamic typing. It has support for unit tests and contracts. It has lambda expressions, closures, list comprehensions, and generators.
Cobra is an open-source project; it was released under the MIT License on February 29, 2008.
Features
Object-oriented:
* Namespaces
* Classes, interfaces, structs, extensions, enumerations
* Methods, properties, indexers
* Mixins, extension methods
* Generics, attributes
Quality control:
* Contracts, assertions
* Unit tests, docstrings
* Compile-time nil-tracking
Expressiveness:
* Static and dynamic binding
* List, dictionary, and set literals
* <code>in</code> and <code>implies</code> operator
* <code>for</code> expressions
* Slicing
* Interpolated strings
* Compile-time type inference
* Lambdas and closures
General productivity:
* Exception handling
* Postmortem exception report
* Garbage collection
Scripting conveniences:
* Clean syntax
* Dynamic binding
* One-step run
* Shebang line (<code>#!</code>)
Miscellaneous:
* Documentation tool (<code>cobra -doc</code>)
* Syntax highlighting tool (<code>cobra -highlight</code>)
Examples
The following examples can be run from a file using <code>cobra <samp><filename></samp></code>.
A simple class
References
External links