CRE082 Erlang

Die Programmiersprache für Gleichzeitiges, Robustes und Verteiltes

Episode image forCRE082 Erlang Die Programmiersprache Erlang nimmt eine Sonderrolle unter den Programmiersprachen ein, weil sie sich von Beginn an auf Disziplinen spezialisiert hat, deren Eigenschaften zunächst auf die Steuerung von Telefonanlagen ausgerichtet waren, aber heutzutage zunehmen auch Anwendung bei Internetanwendungen findet, die sich durch eine besondere Skalierbarkeit und Robustheit auszeichnen müssen. Ben Fuhrmannek stellt im Gespräch mit Tim Pritlove die Eigenschaften und Vorzüge von Erlang vor.

Dauer: 1:05:06

On Air
avatar Ben "bef" Fuhrmannek
avatar Tim Pritlove Bitcoin Icon Paypal Icon
Support
avatar Max Merz
Shownotes:

Intro

00:00:00

Erlang: The Movie — “Hello Mike.” (Joe) “Hello Joe. System working?” (Mike) “Seems to be.” (Joe) “Okay, fine.” (Mike) — CRE Intro.

Easterhegg 2008 00:02:03

Erlang — Ben "bef" Fuhrmannek — Vortrag von Ben — Wissenswertes über Erlangen — Max Goldt — Hackcenter — Freifunker — Origami-Workshop — Phone Operation Center (POC).

Programmiersprache Erlang

00:04:39

Agner Krarup Erlang — Computer Science Laboratory — Ericsson — “Ericsson Language” — Telefonanlage — Phone Operation Center (POC) — DECT — Anforderungen einer Telefonanlage — Asterisk — FreeSwitch — Yate — YXA — Lisp — “Lisp gab’s schon immer!” (Tim) — C — Pascal — Prolog — Funktionale Programmierung — Prozedurale Programmierung — Programmierparadigma — Erlang (Einheit) — Erlang-Verteilung — Fehlerbehandlung — Verteiltheit — Hebdrehwähler — Nebenstellenanlage — Dienstgüte — Geschichte von Erlang — Seit 1998 ist Erlang Open Source — Erlang: The Movie (CTV068 Erlang – Declarative Real Time Programming Now!)  — Software in Erlang — ejabberd — jabber.org — jabber.ccc.de — Jabber (XMPP).

Nebenläufigkeit

00:17:50

Nebenläufigkeit — Threads — Betriebssystem — Prozess — Interprozesskommunikation — Shared Memory — Semaphore — “Das braucht man in Telefonanlagen und was man in Telefonanlagen braucht, das braucht man auch sonst im Leben.” (Tim) — spawn — !-Operator — Ben und Tim spielen Erlang Prozesse — Locks — Deadlock — Message Queue (Queue)  — Pattern Matching.

Geschwindigkeit

00:25:23

Freizeichen — BASIC — Stresstest — Tsung — erlang-projects.org — Ruby on Rails — CRE072 Moderne Webentwicklung — ErlyWeb (ErlyWeb)  — Yaws — Apache HTTP Server — lighttpd — Word Wide Web — Twitter — Twitter Ausfälle — Erlang ist für Serverprozesse.

Zuverlässigkeit

00:32:15

Exception Management — Pointer.

Erlang und das Betriebssystem

00:34:29

Mehrkernprozessor — Erlang SMP Support — SMP — Erlang Transportprotokoll — Endianness — Skriptsprache — Kompilierung — Bytecode — Erlang VM — Java — escript (Stand-Alone Erlang) — Runtime.

Verteiltheit

00:37:30

DNS — Speicherverwaltung — mnesia — SQL — Erlang List Comprehensions.

Datentypen

00:41:20

Liste — Tupel — Integer — Float — Strings sind Listen — Python — XML — Übertragung eines objektorientierten Programms in Erlang — Smalltalk.

Datenbanken

00:42:56

CRE078 Zope und Plone — Zope — Plone — Objektdatenbank — mnesia ist auch verteilt — XSLT.

Einsatzgebiete

00:45:45

ejabberd — POC — BSD — Verteilte Anwendungen im Asterisk — Amazon Web Services — Amazon SimpleDB — Amazon S3.

Open Telecom Platform

00:50:03

OTP — Erlang Behaviours — Interfaces — Mehrfachvererbung — Templates.

Empfehlungen

00:53:03

Joe Armstrong: Programming Erlang — Manpages — erlang.org — “Richtige Menschen sozusagen benutzen das auch, nicht nur diese Zombies aus dem Video.” (Tim) — “Die müssen inzwischen auch ziemlich alt sein.” (Ben) — Erlang: The Movie — “Es ist eine Erfrischung für das Gehirn.” (Ben) — Wings 3D — "Es gibt ja immer so Leute, die meinen: ‘Wann haben wir denn mal endlich die Programmiersprache, die alle Probleme löst?’" (Tim) "Und jetzt haben wir sie gefunden, so einfach ist das!" (Ben) "Zumindest wenn alle Probleme sich mit ‘Muss sich verhalten wie eine Telefonanlage’ zusammenfassen lassen." (Tim) — Erlang Dokumentation — Trapexit Erlang Community — Bens eMail-Adresse <mailto:bef@eventphone.de> — erlang-questions.

Abschluss

00:58:48

Danke an Ben — Tim verlangt nach Feedback — CRE Outro — Max Goldt: Wissenswertes über Erlangen.

 

17 Gedanken zu „CRE082 Erlang

  1. Oh Mann, Tim, Du bist wirklich immer wieder für ’ne Überraschung gut. Erlang … wie geil (und wie abgefahren)! Ich hab’ immer noch dieses CTV-Video über Erlang und die Kunst, eine Telefonanlage zu programmieren, im Hirn. Und natürlich Max Goldt. Ich bin jetzt schon begeistert — mal sehen, was ich sage, wenn ich das Ding gehört haben werde … ;-)

  2. Was für ne verpeilte Musik am Schluß. 8)
    (War richtig überascht das da noch was kam…)

    Äußerst löblich mal wieder dein Einsatz Tim,
    für die unbedarften Hörer Dinge zu erklären die für Dich
    oder den Gast halt selbstverständlich sind (hier z.B. das POC)
    oder den Bogen auch mal weiter zu spannen,
    wie mit den alten mechanischen Telefonanlagen.
    Das ist IMHO auch das tollste am CRE das jedes Thema
    eine ziemliche “Bandbreite” bekommt, und auch die Themen
    rechts und links vom eigentlichen Thema erwähnt werden.

  3. @mds: Nö. Das Easterhegg ist halt nicht der Congress. Und irgendwann wollen auch wir mal eine Veranstaltung ohne Kameras haben ;-)

  4. Huhu!

    Kleine Ergänzung zum Thema Erlang: Erlang [Erl] ist eine Pseudoeinheit, welche die Auslastung einer Telefonleitung in leitungsvermittelten Netzen (PSTN, ISDN) beschreibt. 1 Erl = 24 h Kanalauslastung / 24 h Zeit. Details gibt, wer hätte es gedacht, in der Wikipedia ( http://de.wikipedia.org/wiki/Erlang_%28Einheit%29 ). Die Einheit ist nach Agner Krarup Erlang benannt, bei der Programmiersprache bin ich mir aber unsicher. Sie kann entweder ebenfalls nach dem Ingenieur Erlang oder n ach der EInheit benannt sein.

    LG

    Seb

  5. Hi,

    vielen Dank für den schönen Podcast!

    Ich möchte der Fairheit halber darauf hinweisen, dass trapexit.org die Community Webseite der Beratungsfirma Erlang Training und Consulting darstellt.

    Erlang ist zwar Open Source, es ist jedoch nicht so Community-getrieben, wie z.B. FreeBSD, wo FreeBSD.org herstellerunabhängig die Entwicklergemeinde repräsentiert.
    Die Situation ist eher mit der von Java/Sun vergleichbar.

    Erlang wurde bei Ericsson so von 1985 an entwickelt, als closed source Projekt für die Firma.

    1998 fiel Erlang dann bei Ericsson in Ungnade, der neue Chef wollte lieber C++. Die Entwicklertruppe im Forschungszentrum Älvsjö (Stockholm) konnte jedoch erreichen, das das System als Open Source Projekt veröffentlicht wurde.

    Und auch heute noch findet die Weiterentwicklung fast ausschliesslich durch dieses Erlang/OTP Team statt, von Ericsson finanziert, weil Erlang wohl doch noch in einigen Produkten Verwendung findet.

    Hat Vor- und Nachteile. Die Community ist daher halt durch das OTP Team und ehemalige Mitglieder dominiert. Allenfalls mal von den Universitäten Göteborg und Upsala kommt auch mal was, da sitzt wohl noch Know How.

  6. Erlang hat nicht nur zufällig Syntax-Ähnlichkeiten zu Prolog, wie vom Gast bemerkt, sondern wurde ursprünglich in Prolog implementiert. Das sagt zumindest der Meister selbst in dem von Sebastian (Kommentar 3) erwähnten Podcast.

  7. Pingback: MM086 Deutschland wurde heruntergeladen | mobileMacs

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.