• Keine Ergebnisse gefunden

Fortgeschrittene Techniken der Funktionalen Programmierung Vorlesung vom 26.01.10: The Next Big Thing — Scala & F#

N/A
N/A
Protected

Academic year: 2022

Aktie "Fortgeschrittene Techniken der Funktionalen Programmierung Vorlesung vom 26.01.10: The Next Big Thing — Scala & F#"

Copied!
6
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Fortgeschrittene Techniken der Funktionalen Programmierung Vorlesung vom 26.01.10:

The Next Big Thing — Scala & F#

Christoph Lüth, Dennis Walter

Universität Bremen

Wintersemester 2009/10

(2)

Fahrplan

I Teil I: Monaden und fortgeschrittene Typen

I Teil II: Fortgeschrittene Datenstrukturen

I Teil III: Nebenläufigkeit

I Teil IV: The Future of Programming

I Fancy Types

I Domain-Specific Languages

I The Next Big Thing: F#, Scala

I Rückblick, Ausblick

(3)

Heute

I Scala

I F#

I . . . warum?

(4)

Scala

I Ascalable language

I Multi-paradigma-Sprache

I “Lebt im Java-Ökosystem”

I Martin Odersky, ETH Lausanne

I http://www.scala-lang.org/

(5)

Scala — Die Sprache

I Objekt-orientiert:

I Veränderlicher, gekapselterZustand

I Subtypen und Vererbung

I Klassen und Objekte

I Funktional:

I UnveränderlicheWerte

I Polymorphie

I Funktionen höherer Ordnung

(6)

Scala — Weitere Features

I forfür Komprehension

I Abstraktionsmechanismen für Typen, Klassen, Parameter

I Unterstützt funktionale Konzepte (Endrekursion, pattern matching)

I Abbildung von Java-Konzepten: singleton objects, traits

I Flexibles, mächtiges Typsystem (Varianz, beschränkte Polymorphie)

I XML-Unterstützung

Referenzen

ÄHNLICHE DOKUMENTE

Im kritischen Abschnitt schlafengehen, wenn Bedingung nicht erf¨ullt (Lock freigeben!).. Andere Threads machen Bedingung wahr und melden

I Funktionale Sprachen behandeln Zukunftsthemen heute.. Standard ML);. I Continuations (Auswertungskontext

Fortgeschrittene Techniken der Funktionalen Programmierung Vorlesung vom 27.10.09:.. Monads — The

Fortgeschrittene Techniken der Funktionalen Programmierung Vorlesung vom 03.11.09:.. Mehr ¨

I Standard-B¨ ucherei (Monad Template Library) bietet Standard-Monaden als praktischen Bausatz. I

Fortgeschrittene Techniken der Funktionalen Programmierung Vorlesung vom 17.11.09:..

I Beispiel f¨ur induktive, aber nicht freie Datenstruktur. I Kompakte Darstellung, effiziente

I Aber: Haskell Standard-IO blockiert nur den aufrufenden Thread.. IORef a). I Entweder leer oder gef¨ullt mit Wert vom