Skip to content

frameworklabs/BlinkerPappe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BlinkerPappe

A simple demo for the Pappe embedded interpreted syncrhronous Swift DSL.

Overview

This demo replicates the Blech blinker demo for the Pappe Swift DSL.

It shows how the synchronous programming approach simplifies the control logic even in a high level language like Swift and on a platform like MacOS with its many frameworks.

The program uses the SpriteKit framework which alternates at 60Hz between updating the scene state via a user provided callback and presenting the new sceen state automatically. This callback approach normally tears the imperative control flow apart forcing you to use a state-machine instead which get hard to follow quickly. The imperative synchronous programming paradigm as proposed by languages like Blech helps you to stay in control instead.

How to build

Open the "BlinkerPappe.xcodeproj" project file with Xcode >= 12.0 - it should automatically resolve the needed Pappe Package dependency.

Caveats

The Pappe DSL is more of a proof of concept. It has many shortcommings like:

  • No causality checking.
  • Interpreted instead of compiled.
  • Untyped and unchecked variables.
  • Poor Test coverage.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages