Reacl 2 - rein funktionale Programmierung, Side Effects und Actions

Vor einigen Tagen schaffte Reacl, eine von uns im Haus entwickelte, rein funktionale Bibliothek um React.js, den Sprung auf Version 2.0.0 (Link zur Github-Seite). In diesem Artikel betrachten wir einen neu eingeführten Mechanismus etwas genauer: die Actions.

Weiterlesen...

BOB Konferenz am 24.2.2017 in Berlin

BOB 2017

Die Vorbereitungen für die BOB 2017 sind abgeschlossen: Am Freitag, 24.2.2017 findet die dritte Iteration in Berlin statt. Wieder gibt es jede Menge Vorträge und Tutorials über das Beste, was die Softwareentwicklung zu bieten hat. Das Programm folgt dem bewährten Format und besteht insgesamt aus vier Tracks: zwei Tracks mit insgesamt 14 Vorträgen und zwei Tracks mit acht Tutorials. Die Online-Registrierung läuft; bis zum 23.1. gibt es noch Frühbucherrabatt.

Weiterlesen...

Spezifikation von Clojure-Datentypen mit clojure.spec

Clojure ist eine dynamische Programmiersprache, was unter anderem bedeutet, dass auch die Datentypen erst dynamisch zur Laufzeit feststehen. Clojure kennt zwar sogenannte type hints, die sollen aber dem Compiler helfen, effizienteren Code zu generien und sind nicht dafür da, Typeigenschaften von Datenstrukturen zu erzwingen. Die clojure-spec-Bibliothek füllt diese Lücke: Damit ist es möglich, die Struktur der Daten als Programmcode zu spezifizieren und so die zur Laufzeit vorhandenen Daten zu validieren. Das führt zu weniger unerwartetem Verhalten während der Programmlaufzeit und im Fehlerfall zu besseren Fehlermeldungen. Zusätzlich ist sogar möglich, Daten aus der Spezifikation zu generieren, zum Beispiel für randomisiertes Testen.

Dieser Artikel gibt eine Einführung in clojure.spec.

Weiterlesen...