Discover millions of ebooks, audiobooks, and so much more with a free trial

Only $11.99/month after trial. Cancel anytime.

Sprachenkompendium: Ceylon, Erlang und Ruby
Sprachenkompendium: Ceylon, Erlang und Ruby
Sprachenkompendium: Ceylon, Erlang und Ruby
Ebook58 pages31 minutes

Sprachenkompendium: Ceylon, Erlang und Ruby

Rating: 0 out of 5 stars

()

Read preview

About this ebook

Als zweiter Teil des Sprachenkompendiums berichtet dieser shortcut über drei weitere Programmiersprachen, die vielen Entwicklern noch nicht im Detail bekannt sein dürften. Es handelt sich um Ceylon, Erlang und Ruby. Die Autoren befassen sich mit den Grundlagen und Besonderheiten der drei Programmiersprachen und betrachten in diesem Zuge ebenfalls geschichtliche Aspekte und Entwicklungen der Sprachen.
LanguageDeutsch
Release dateDec 10, 2014
ISBN9783868025231
Sprachenkompendium: Ceylon, Erlang und Ruby

Related to Sprachenkompendium

Titles in the series (100)

View More

Related ebooks

Programming For You

View More

Related articles

Reviews for Sprachenkompendium

Rating: 0 out of 5 stars
0 ratings

0 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    Sprachenkompendium - Frank Hinkel

    GmbH

    1 Ceylon auf der JVM und Node.js

    Das Ceylon-Projekt ist eine Entwicklung von Fans des Java-Ökosystems, die besonders dessen Entwicklercommunity, praktische Orientierung, Kultur der Offenheit und Einsatz für Portabilität wertschätzen. Die rund fünfzehn Jahre alte Sprache Java an sich ist jedoch für das Ceylon-Team Grund genug gewesen, eine Alternative zu erstellen. Das große Ziel ist es also, aufzuräumen und zu vereinfachen, um für aktuelle Anwendungsfälle ausgerüstet zu sein. Dabei sollen sich Entwickler nicht in der Anwendung von Frameworks verlieren und gleichzeitig wieder Spaß beim Coden haben.

    Ceylon verfolgt keinen spezifischen Anwendungsfall, sondern versteht sich als vielseitig einsetzbares Werkzeug. Syntaktisch lehnt sich Ceylon an C# und Java an. Dementsprechend sollte für viele Entwickler die Einarbeitung tendenziell einfacher sein. Rein formal lässt sich Ceylon wie folgt klassifizieren: imperativ, statisch typisiert, block-strukturiert, objektorientiert, höhere Ordnung. Das statische Typsystem wird in Ceylon besonders ernst genommen und könnte den Freunden von untypisierten Sprachen eventuell noch weniger Freude bereiten als in Java. Die strikte Typsicherung hebt den Nutzen von Typisierung allerdings auch hervor und könnte somit wiederum auch für Gegner des lückenhaften Typsystems von Java interessant werden. Die höhere Ordnung beschreibt ein Phänomen, welches aus funktionalen Sprachen oder den Neuerungen aus Java 8 bekannt ist. Gemeint ist damit, dass jedes Element der Sprache wie beispielsweise Attribute oder Operationen ebenfalls als Werte repräsentiert werden und auch darüber im Zugriff stehen.

    Noch plattformunabhängiger

    Mögliche Laufzeitumgebungen für Ceylon können die Java Virtual Machine (JVM) oder jede beliebige Java­Script Virtual Machine sein, beispielsweise ein Browser oder die Node.js-Plattform. Dabei ist Ceylon-Code bezogen auf Java- und JavaScript-Code bidirektional interoperabel. Die Verbindung von Java und Ceylon übernimmt der Ceylon-Compiler, welcher Java kompilieren kann, Ceylon-Code aufruft und vice versa. Die Integration mit JavaScript ermöglicht auch hier ein Compiler, welcher die Umwandlung von Ceylon-Modulen in JavaScript-Code übernimmt. Für die andere Richtung unterstützt Ceylon einen speziellen Modus, in dem native JavaScript-Funktionen aufgerufen werden können. Als gemeinsame Basis für die JVM und JavaScript stellt Ceylon ein SDK zur Verfügung, das die Kernmodule in beiden Varianten bereitstellt. In Listing 1.1 ist die Verwendung eines einfachen Node.js-HTTP-Servers dargestellt. Innerhalb der Request-Verarbeitung wird myCelon.run() ausgeführt. MyCeylon ist an dieser Stelle eine Referenz auf von Ceylon-kompilierten JavaScript-Code (nodeceylon-1.0.0.js).

    var http = require('http');

    var myCeylon = require('./nodeceylon-1.0.0.js');

    http.createServer(function (req, res) {

        res.end(Hallo, + myCeylon.run());

    }).listen(1337, '127.0.0.1');

    Listing 1.1

    Zur Kompilierung der JavaScript-Datei wurde das Ceylon-Kommandozeilentool verwendet, wie es hier dargestellt ist:

    $ ceylon compile-js –source=. nodeceylon

    nodeceylon ist dabei ein einfaches Ceylon-Modul, welches mindestens eine öffentliche Top-Level-Operation besitzen muss. Zum Darstellen der Interoperabilität wurde ein einfacher String-Wert zurückgegeben:

    shared String run() {

      return(Ceylon!);

    }

    Die Ausgabe des Servers ist entsprechend Hallo, Ceylon!, wobei der letzte Teil des Strings aus einer zu Java­Script kompilierten Ceylon-Operation kam.

    Feingranulare Modularisierung

    Bei der Entwicklung

    Enjoying the preview?
    Page 1 of 1