title: Cobra (linguaggio di programmazione)
text: # Cobra (linguaggio di programmazione)
  
  Cobra è un linguaggio di programmazione general purpose, multi-paradigma, open source creato a partire dal 2008 dal programmatore californiano Chuck Esterbrook. Nato inizialmente per Windows avendo come target la piattaforma Microsoft.Net questo linguaggio è in grado di girare anche su sistema operativo Linux e su Mac sfruttando il progetto Mono (porting di .Net nel mondo *nix). Sia pure a livello embrionale è in corso anche il porting verso la piattaforma Java e verso il sistema operativo per dispositivi mobili Android. L'intento dell'autore era quello di creare uno strumento che unisse le caratteristiche a suo modo di vedere più interessanti di altri linguaggi. In particolare fonti di ispirazione sono stati C#, Python ed Eiffel, quest'ultimo in particolare per l'adozione del paradigma detto "design by contract". Il progetto non è più aggiornato dalla fine del 2013.
  
  ## Hello, World
  
  Il seguente esempio propone il classico "Hello, World!":
  
  di seguito invece abbiamo la creazione di una classe:
  
  ## Caratteristiche del linguaggio
  
  * è un linguaggio orientato a oggetti che supporta anche molti aspetti di programmazione funzionale (chiusure, espressioni lambda)
  * supporta sia la tipizzazione statica che quella dinamica e l'inferenza di tipo
  * supporta nativamente le metodologie design by contract e unit test
  * è in grado di sfruttare pienamente il framework .Net
  