Skip to content

Latest commit

 

History

History
44 lines (39 loc) · 3.87 KB

readme.md

File metadata and controls

44 lines (39 loc) · 3.87 KB

Prowl Ideas

Ideas pile for Prowl (tutorial).

Prowl is a purely-functional, statically typed, modular, concatenative relational programming language.

Main inspirations include:

  • Stack Languages (Kitten, Factor, Joy)
  • Functional Languages (OCaml, Haskell)
  • Relational Languages (miniKanren)
  • Kleene Algebras (Vinegar, Oniguruma Regex)

Our look is highly original, though loosely inspired by SML, Reason, Factor, and Regex.

rel n fac -- 
  (n == 0) 1
  : n * (n - 1) fac

Alternatively:

rel fac -- (
  as 0 -> 1; 
  as n if n > 0 -> n * (n - 1) fac
)?!

Check out learn-fast for more. An interpreter exists for a much older, much less cool version of the language.

Links, Inspirations, Motivators