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:
base-test : Plans without condition; mental attitudes have no arguments;
cond-test : Plans with condition (NO lambdas); mental attitudes have no arguments;
args-test : Plans with condition (NO lambdas); mental attitudes have arguments;
lambda-test : Plans with condition and lambdas; mental attitudes have arguments;
graph-test : Plans with few elements, just to test the Visual Representation
lexical-err : Plans with lexical errors (illegal characters);
syntax-err : Plans with syntax errors, which are handled by error productions (Augmented Propylene);
type-err : Plans with 'Type Mismatch' semantic errors;
unbound-err : Plans with 'Unbounded Variable' semantic errors;