Questions Concepts
GitHub icon

Jison Lex

Jison Lex - Programming language

< >

Jison Lex is an open source programming language created in 2013 by Zachary Carter.

Source code:
git clone https://github.com/zaach/jison-lex
#910on PLDB 10Years Old 0Repos

generates lexical analyzers. used by jison.


Example from Linguist:
%% \n+ {yy.freshLine = true;} \s+ {yy.freshLine = false;} "y{"[^}]*"}" {yytext = yytext.substr(2, yyleng - 3); return 'ACTION';} [a-zA-Z_][a-zA-Z0-9_-]* {return 'NAME';} '"'([^"]|'\"')*'"' {return 'STRING_LIT';} "'"([^']|"\'")*"'" {return 'STRING_LIT';} "|" {return '|';} "["("\]"|[^\]])*"]" {return 'ANY_GROUP_REGEX';} "(" {return '(';} ")" {return ')';} "+" {return '+';} "*" {return '*';} "?" {return '?';} "^" {return '^';} "/" {return '/';} "\\"[a-zA-Z0] {return 'ESCAPE_CHAR';} "$" {return '$';} "<<EOF>>" {return '$';} "." {return '.';} "%%" {return '%%';} "{"\d+(","\s?\d+|",")?"}" {return 'RANGE_REGEX';} /"{" %{if (yy.freshLine) { this.input('{'); return '{'; } else { this.unput('y'); }%} "}" %{return '}';%} "%{"(.|\n)*?"}%" {yytext = yytext.substr(2, yyleng - 4); return 'ACTION';} . {/* ignore bad characters */} <<EOF>> {return 'EOF';}

Language features

Feature Supported Token Example
Booleans true false

View source

- Build the next great programming language · Search · Add Language · Features · Creators · Resources · About · Blog · Acknowledgements · Queries · Stats · Sponsor · Traffic · Traffic Today · Day 305 · feedback@pldb.com · Logout