Nice (Programmiersprache)

Nice ist eine Programmiersprache. Ihre Syntax ähnelt stark der von Java, und zudem erzeugt der Compiler Bytecode für eine Java-VM.

Im Unterschied zu Java unterstützt Nice eine ganze Reihe von Sprachelementen, die aus der Welt der funktionalen Programmiersprachen bekannt sind. Neben echten Funktionen zählen dazu auch die von Lisp bekannten Multimethoden (multiple dispatch), Closures und Funktionen höherer Ordnung.

Nice setzt das Paradigma der statischen Typisierung um. Dank eines Typ-Inferenz-Mechanismus ist es nicht notwendig, jedem Parameter zum Zeitpunkt des Programmentwurfs einen Typ zuzuordnen, insofern sichergestellt ist, dass dieser zur Laufzeit dynamisch ermittelt werden kann. Zudem beherrscht Nice generische Typen, wie sie mit Version 1.5 auch in Java eingeführt wurden. Dabei wird das Ziel verfolgt, Class-Cast-Exceptions so weit wie möglich zu verhindern. Eine Besonderheit dabei ist, dass der Nullwert (optional, um die Interoperabilität mit Java nicht zu behindern) als eigenständiger Datentyp betrachtet wird und es so mithin möglich ist, das Auftreten eines Nullzeigers bereits beim Kompilieren als Typfehler zu erkennen.

Siehe auch

Weblinks