- Dark is a functional programming language, an editor, and an “infrastructure builder.”
- Dark is centered around a Structural Editor.
- Optimized for fast deployment. The code is deployed directly on the production server (usually under a feature flag).
- It uses function/type/database schema versioning, so different versions of a function can work side by side.
- DB version is paired with rollback/rollforward functions so that both old and new code can work with the schema version.
- I think with automatic code versioning, managing feature flags should be easy.
Dark implicitly unwraps Option/Result types while prototyping (like rust’s old
- They have this idea from Railway Oriented Programming.
- It also versions the Dark itself, so you can migrate your functions one by one when new Dark version is released.