fork download
  1. /*lex_by_file( FileName ) :-
  2. get_input_from_file( FileName, TokenList ),
  3. lex( TokenList, OutputList ),
  4. %write_output( OutputList ), !.
  5. maplist(writeln,OutputList),!.
  6.  
  7. %% atom_number(atom, number)
  8. lex([],[]).
  9. lex(['int' | T], ['TYPE: int' | R]) :- lex(T, R).
  10. lex(['bool' | T], ['TYPE: bool'] | R) :- lex(T, R).
  11. lex([',' | T], ['COMMA: ,'] | R) :- lex(T, R).
  12. lex([X | T], [X | R]) :- lex(T, R).*/
  13.  
  14. %{
  15. #include<stdio.h>
  16. %}
  17.  
  18. %%
  19. ^011.*110$ printf("accepted");
  20. . printf("rejected");
  21. %%
  22.  
  23. int yywrap()
  24. {
  25. return 1;
  26. }
  27.  
  28. int main()
  29. {
  30. yylex()
  31. return 0;
  32. }
  33.  
Success #stdin #stdout #stderr 0.02s 6996KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
ERROR: /home/gkmwlB/prog:15:1: Syntax error: Operator expected
ERROR: /home/gkmwlB/prog:32:1: Syntax error: Unexpected end of file
ERROR: '$runtoplevel'/0: Undefined procedure: program/0
   Exception: (3) program ? EOF: exit