This is the code base for CS429 S2023 CI lab. Check the writeup for more details.
Files should be included in handout:
tests/
ansicolors.h
ci_reference
ci.c
ci.h
driver.sh
err_handler.c
err_handler.h
eval.c
handle_args.c
interface.c
lex.c
Makefile
node.h
parse.c
print.c
token.h
type.h
update.sh
value.h
variable.c
variable.h
-
Students are required to complete
eval.candvariable.c. -
ci_referenceis a compiled reference program executable provided to students.driver.sh <filename>runsciandci_referenceand compares their outputs. -
tests/holds the testcases provided to students. Students are required to pass all testcases intest_week1.txtfor week 1.
-
Run
make cito get the binaryci. Runmake test_week#to run the simple grader on a given week's test cases. -
citakes two optional arguments:./ci -i <infile> -o <outfile>The infile can also be fed from stdin with
./ci < <infile>. The outfile is only used for grading, where the formatting stuffs are removed. -
The interactive prompt of
citakes two special commands:@qto quit the program@pto print all defined variables (EEL-2)