Top 1,000 Features Creators Events Podcasts Extensions Blog Explorer CSV Download

pasukon

< >

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

#1177on PLDB 4Years Old
Download source code:
git clone https://github.com/gosukiwi/Pasukon
HomepageREPLSource Code

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 About Resources Acknowledgements Part of the World Wide Scroll