Measures Concepts
GitHub icon

pasukon

pasukon - Grammar language

< >

pasukon is a grammar language created in 2020 by Federico Ramirez.

Source code:
git clone https://github.com/gosukiwi/Pasukon
#947on PLDB 4Years Old

Try now: Web

JavaScript practical parser generator library using combinators


Example from the web:
lex match NUMBER /[0-9]+(?:\.[0-9]+)?/ match PLUS '+' match MINUS '-' match TIMES '*' match DIV '/' match POPEN '(' match PCLOSE ')' ignore WHITESPACE /^\s+/ /lex addition | (subtraction as :lhs) then :PLUS then (subtraction as :rhs) |> 'return $.lhs + $.rhs' | subtraction ; subtraction | (multiplication as :lhs) then :MINUS then (multiplication as :rhs) |> 'return $.lhs - $.rhs' | multiplication ; multiplication | (division as :lhs) then :TIMES then (division as :rhs) |> 'return $.lhs * $.rhs' | division ; division | (expression as :lhs) then :DIV then (expression as :rhs) |> 'return $.lhs / $.rhs' | expression ; expression | :POPEN then (addition as :expr) then :PCLOSE |> 'return $.expr' | number ; number | :NUMBER 'return +$1' ; start | addition ;

View source

- Build the next great programming language Search Add Language Features Creators Resources About Blog Acknowledgements Queries Stats Sponsor Day 605 feedback@pldb.io Logout