Eins für zwei - Scala 3 Enums

Nach 8 Jahren, 28000 Commits und 7400 Pull-Requests war es am 14. Mai 2021 endlich so weit: Scala 3 wurde veröffentlicht. Neben dem neuen Compiler „Dotty“ haben es eine neue Syntax sowie einige Neuerungen an der Sprache in Scala 3 geschafft. In diesem Blogpost der Serie über interessante Neuerungen werden wir Enums genauer unter die Lupe nehmen. Diese sind nicht nur klassische Enums, um Wertemengen aufzuzählen. Tatsächlich werden sie verwendet, um die in Scala 2 ermüdende Definition von algebraischen Datentypen eleganter zu gestalten.

Weiterlesen...

Scala 3: Scala im neuen Gewand

Nach 8 Jahren, 28000 Commits und 7400 Pull-Requests war es am 14. Mai 2021 endlich so weit: Scala 3 wurde veröffentlicht. Neben dem neuen Compiler „Dotty“ haben es eine neue Syntax sowie einige Neuerungen an der Sprache in Scala 3 geschafft. In dieser Blogpost-Reihe werden einige der interessanten Neuerungen im Detail diskutiert. In diesem ersten Teil der Reihe wird der „quiet mode“ vorgestellt. Dabei handelt es sich um eine alternative Syntax, die mit Einrückungen Blockbildung vornimmt, statt mit geschweiften Klammern.

Weiterlesen...

DSLs ganz einfach mit Clojure

Clojure hat sich als alternative Programmiersprache auf der JVM fest etabliert: Die Sprache ist ausgereift, das Ökosystem enthält viele nützliche Libraries und Frameworks, und die kleine aber rege Community ist freundlich und stellt viele Konferenzen und Meetups auf die Beine.

Nicht nur Clojures Nische ist klein: die Programmiersprache selbst ist es auch, und damit schnell und leicht erlernbar. Was ist die Anziehungskraft dieser winzigen Sprache gegen den Goliath Java?

Zwei Dinge sind da besonders relevant: Clojure-Programme sind kompakter als ihre Java-Pendants und ermöglichen damit die Konzentration auf das Wesentliche. Wichtiger noch: Clojure ist eine funktionale Sprache und ermöglicht damit oft eine andere Sicht auf die Domäne als das klassisch objektorientierte Java. Dieser Artikel demonstriert das anhand einer kleinen domänenspezifischen Sprache für Bilder. Vorkenntnisse in Clojure sind für die Lektüre nicht notwendig, die verwendeten Konstrukte werden allesamt erläutert.

Weiterlesen...

BOB 2021 – Retrospektive

Am 26.02.2021 fand die BOB Konferenz 2021 statt, diesmal unter Pandemiebedingungen – das hieß für uns: online.

Weiterlesen...

Schulungen Funktionale Softwarearchitektur / Flexible Softwarearchitekturen

Dies ist ein Post in eigener Sache. Wir (also die Active Group GmbH, eine der Betreiberinnen dieses Blogs) bieten ja schon seit geraumer Zeit offene Schulungen in funktionaler Softwarearchitektur an. Neuerdings sind auch noch eine Grundausbildung in Softwarearchitektur und eine Schulung „Flexible Softwararchitekturen“ dazugekommen, beide iSAQB-akkreditiert.

Weiterlesen...