KunterBuntesSeminar-SS10/DieSpracheClojure: Unterschied zwischen den Versionen

Aus Fachschaft Informatik
Zur Navigation springen Zur Suche springen
4teuber (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
K Bot: Kosmetische Änderungen
 
(8 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 3: Zeile 3:
= Abstract =
= Abstract =


Clojure ist eine neue dynamische Sprache für die JVM, die vier besondere Schwerpunkte setzt:
Clojure ist eine neue dynamische Sprache für die JVM, die durch ihre Eleganz, Mächtigkeit und praktische Anwendbarkeit besticht - und dabei einfach nur Spaß macht.
* Funktionale Programmierung und Fokus auf Immutability
 
Im Wesentlichen verfolgt Clojure vier Designziele:
* Funktionale, zustandsfreie Algorithmen statt veränderlichen Objekten
** These: "Mutable Objects are the new Spaghetti Code"
* Verschiedene, sehr gute Concurrency-Modelle dort, wo Zustände benötigt werden
** Z.B. Software Transactional Memory und Agents
** Kommen ohne Locking aus
* Einfache und direkte Java-Interop
* Einfache und direkte Java-Interop
* Concurrency
** Alle Libraries stehen direkt zur Verfügung
* Es ist ein Lisp-Dialekt ähnlich Scheme
* Ein Lisp-Dialekt ähnlich Scheme
** Mächtige Metaprogrammierung möglich, wenn benötigt
** Optimal für DSL's
 
Nach einem kurzen Einführungsvortrag werden wir gemeinsam mit einer interaktiven Clojure-Umgebung experimentieren. Sollte am Ende noch Zeit sein, hilft Benjamin gerne beim Installieren auf euren Notebooks.


= Vortragender =
= Vortragender =
Zeile 13: Zeile 23:


= Material =
= Material =
(coming soon)
[[Medium:Clojure-slides.pdf|Folien zum Vortrag]]


= Weiterführende Links =
= Weiterführende Links =
* [http://www.try-clojure.org TryClojure] - ein Online-REPL zum Spielen
* [http://clojure.org clojure.org] - die offizielle Clojure-Webseite
* [http://clojure.org clojure.org] - die offizielle Clojure-Webseite
* [http://clojure.blip.tv clojure.blip.tv] - eine Reihe interessanter Vorträge vom Clojure-Autor
* [http://clojure.blip.tv clojure.blip.tv] - eine Reihe interessanter Vorträge vom Clojure-Autor
* [http://planet.clojure.in Planet Clojure] - der Startpunkt in die Clojure-Blogosphäre
* [http://planet.clojure.in Planet Clojure] - der Startpunkt in die Clojure-Blogosphäre
* [http://www.paulgraham.com/avg.html Beating the averages] - spannender Artikel über Lisp im allgemeinen


[[Kategorie:KunterBuntesSeminar]]
[[Kategorie:KunterBuntesSeminar]]

Aktuelle Version vom 8. Juni 2012, 16:21 Uhr

Das ist der fünfte Termin des KunterBunten Seminars im Sommersemester 2010.

Abstract

Clojure ist eine neue dynamische Sprache für die JVM, die durch ihre Eleganz, Mächtigkeit und praktische Anwendbarkeit besticht - und dabei einfach nur Spaß macht.

Im Wesentlichen verfolgt Clojure vier Designziele:

  • Funktionale, zustandsfreie Algorithmen statt veränderlichen Objekten
    • These: "Mutable Objects are the new Spaghetti Code"
  • Verschiedene, sehr gute Concurrency-Modelle dort, wo Zustände benötigt werden
    • Z.B. Software Transactional Memory und Agents
    • Kommen ohne Locking aus
  • Einfache und direkte Java-Interop
    • Alle Libraries stehen direkt zur Verfügung
  • Ein Lisp-Dialekt ähnlich Scheme
    • Mächtige Metaprogrammierung möglich, wenn benötigt
    • Optimal für DSL's

Nach einem kurzen Einführungsvortrag werden wir gemeinsam mit einer interaktiven Clojure-Umgebung experimentieren. Sollte am Ende noch Zeit sein, hilft Benjamin gerne beim Installieren auf euren Notebooks.

Vortragender

  • Benjamin Teuber <4teuber>

Material

Folien zum Vortrag

Weiterführende Links