strudel/packages/mondo
2025-03-29 20:17:09 +01:00
..
test fix: test 2025-03-26 09:30:49 +01:00
mondo.mjs mondo: patternable function names 2025-03-26 09:27:02 +01:00
package.json rename uzu to mondo 2025-03-16 02:01:16 +01:00
README.md trim readme 2025-03-29 20:17:09 +01:00
vite.config.js rename uzu to mondo 2025-03-16 02:01:16 +01:00

mondo

an experimental parser for an uzulang, a custom dsl for patterns that can stand on its own feet. more info:

import { MondoRunner } from 'uzu'

const runner = MondoRunner({ seq, cat, s, crush, speed, '*': fast });
const pat = runner.run('s [bd hh*2 (cp.crush 4) <mt ht lt>] . speed .8')

the above code will create the following call structure:

(speed 
 (s 
  (seq bd 
   (* hh 2) 
   (crush cp 4) 
   (cat mt ht lt)
  )
 ) .8
)