hell/compiler/hell.l
2025-03-10 15:20:09 -04:00

40 lines
776 B
Plaintext

%%
"func" { printf("int"); }
local { printf("static"); }
"import" { printf("#include"); }
"str" { printf("char"); }
/*** Data types ***/
"integer" { printf("int"); }
"decimal" { printf("float"); }
"character" { printf("char"); }
"large_decimal" { printf("double"); }
"CLion" { printf("void"); }
/*** Library declarations ***/
/* ioutils */
"hell:std.ioutils" { printf("<stdio.h>"); }
"hell:std.ioutils.writeln" { printf("printf"); }
"hell:std.ioutils.readln" { printf("scanf"); }
/* procutils */
"hell:std.unix" { printf("<unistd.h>"); }
/* keygen */
"hell:std.keygen" { printf("<hellkeygen.h>"); }
"hell:std.keygen.gen" { printf("keygen_gen"); }
/* rng */
"hell:std.rng" { printf("<hellrng.h"); }
"hell:std.rng.gen" { printf("rng_randint"); }