Oden ist eine neue funktionale Programmiersprache für das Go-Ökosystem

Oden ist vor allem von Haskell, aber auch von Lisp beeinflusst und nutzt die Werkzeuge und Bibliotheken von Googles Go. Derzeit befindet sich das Projekt noch in einem frühen Stadium, und die Macher rufen die Community zum Mitmachen auf.

In Pocket speichern vorlesen Druckansicht 1 Kommentar lesen
Funktionale Programmiersprache für das Go-System
Lesezeit: 2 Min.

Google hat Go zum ersten Mal 2009 vorgestellt und als Alternative zu C positioniert. Inzwischen hat sich die Programmiersprache auf diversen Plattformen etabliert, so bringt die für August erwartete Version 1.7 unter anderem erste Umsetzungen für Linux auf IBMs z-Systemen. Nun ist mit Oden ein Community-Projekt zu einer neuen Sprache entstanden, die zwar die Werkzeuge und Bibliotheken von Go nutzt und nach Go kompiliert, aber eigene Konzepte einbringt.

(Bild: oden-lang.org)

Auf der Projektseite nennen die Macher neben Go vor allem die Programmiersprachen Haskell und Lisp als Einflüsse für Oden. Bei beiden handelt es sich im Gegensatz zum strukturierten Go um funktionale Sprachen, und die Seite bezeichnet Oden ebenfalls als funktional. Zudem ist sie wie Haskell und Go, aber anders als Lisp statisch typisiert. Oden soll eine gute Interoperabilität mit Go bieten und dessen eingebaute Typen verwenden. Dabei soll das Typsystem "flexibler als Go und mindestens genauso sicher" sein. Oden soll explizit kein Haskell-Klon sein, obwohl es vor allem von dieser Sprache viele Ideen übernimmt. Ebenso wenig soll es ein "Go-Backend" für eine andere existierende Sprache sein, sondern eine eigenständige Programmiersprache.

Derzeit befindet sich Oden noch in einem experimentellen Status. So weist die Seite darauf hin, dass frühe Nutzer weder einen schnellen Compiler noch einen einfachen Workflow oder schönen Go-Code erwarten dürfen. Die Macher rufen derzeit die Community zum Mitmachen auf. Die Oden-Site hat einen Link zu einer Mailing-Liste und einem IRC-Kanal. Zudem gibt es eine Issues-Seite auf GitHub. Dort liegt auch der Quellcode. (rme)