Home > propylene

propylene

Propylene is a project mainly written in Python, it's free.

propylene is the final project for a compilers course. It aims to generete a proper set of classes from a PROFETA plan, which uses an AgentSpeak-like syntax.

PROJECT OVERVIEW

"propylene" is the final project for a compilers course. It aims to generete a proper set of classes from a PROFETA plan, which uses an AgentSpeak-like syntax.

QUICK-START

To execute the parsing and code generation process on some input file, type:

make parse SRC=input_file_path

To execute parsing, code generation and visual representation, type:

make parse-and-visual SRC=input_file_path

To execute the full unit test, just type:

make

Test input files:

  1. base-test : Plans without condition; mental attitudes have no arguments;

  2. cond-test : Plans with condition (NO lambdas); mental attitudes have no arguments;

  3. args-test : Plans with condition (NO lambdas); mental attitudes have arguments;

  4. lambda-test : Plans with condition and lambdas; mental attitudes have arguments;

  5. graph-test : Plans with few elements, just to test the Visual Representation

  6. lexical-err : Plans with lexical errors (illegal characters);

  7. syntax-err : Plans with syntax errors, which are handled by error productions (Augmented Propylene);

  8. type-err : Plans with 'Type Mismatch' semantic errors;

  9. unbound-err : Plans with 'Unbounded Variable' semantic errors;

Previous:try_upload