Was ist Flow?

Flow ist eine funktionelle Programmiersprache, die durch Area9 entwickelt wurde. Es handelt sich um die Sprache, in der Area9 Rhapsode™ geschrieben wurde.

Wir haben Flow erstellt, um die Entwicklungszeit zu reduzieren, die Wahrscheinlichkeit von Bugs zu senken und die Unterstützbarkeit zu erhöhen. Ein weiterer Vorteil ist die Möglichkeit, falls erforderlich, Cross-Compiling in andere Low-Level-Programmiersprachen vorzunehmen.

Flow ist eine reaktive, funktionale Sprache der ML-Familie, was uns in die Lage versetzt, Folgendes zu tun:

  • Sicherer zu arbeiten. Funktionale Sprachen sind dichter als traditionelle Programmiersprachen, wenn es um kompaktere Codezeilen geht. Untersuchungen legen nahe, dass die Anzahl der Codezeilen ein guter Hinweis auf die Anzahl der Bugs ist. Wir konnten einen ungefähr zehnfachen Rückgang an Codezeilen feststellen.
  • Schneller zu arbeiten. Mit einer ausdrucksvollen Sprache wie der unseren, können wir einfach in kürzerer Zeit mehr ausdrücken. Dies ermöglicht es unseren Entwicklern, produktiver zu sein.
  • Einfacheres Testing und mehr Wiederverwendung. Beim Vergleich von funktionalen zu imperativen Sprachen ist es (unter anderem) ein Vorteil, dass Funktionen zusammensetzbarer sind. Dies ermöglicht die Einkapselung von Funktionalität, einfacheres Testing und die Wiederverwendung.
  • Plattformübergreifende Entwicklung. Da wir den Input kontrollieren und die Möglichkeit haben, den erzeugten Output zu kontrollieren, können wir viele Formen an ausführbarem Code ausgeben, was den Betrieb in Browsern, auf Apple-Geräten (iOS), Android, Windows, Unix usw. ermöglicht. Wir wissen ebenfalls aus Erfahrung, dass die Unterstützung einer neuen zugrundeliegenden Technologie (wie z. B. das Windows Phone, das derzeit in Europa aufblüht) durch uns ungefähr 3 Monate dauert. Dadurch wird gewährleistet, dass unsere Codebase bei einigen externen Technologien nicht veraltet.

Die Nutzung von Area9 Rhapsode™ setzt bei unseren Kunden keine Kenntnisse unserer Flow-Sprache voraus. Unsere APIs sind unter Nutzung von „Standard-Programmiersprachen“ vollständig zugänglich und wir unterstützen SCORM, LTI, xAPI, QTI, XML, XLIFF, ePUB und weitere Standards.