Author: Stan Eisenstat
Subject: The deliverables for Homework #2 parsley
Date: Friday, 25 Sep 2020, 08:24:23
There seems to be some confusion over the deliverables for Homework #2 parsley. parsley prompts for and reads lines from stdin, breaks the lines into tokens, parses the tokens into a tree of commands, and writes the tree in in-order to stdout. The code for parsley is in two parts: A) Hwk2/mainParsley.c * prompts for and reads lines from stdin; * calls parse() to break the lines into tokens and parse the tokens into a tree of commands; and * writes the tree in in-order to stdout. B) Your source files implement parse(), which, given a string with the line read from stdin, * [Tokenization] breaks the string into a sequence of tokens of the types described in the specification (TEXT tokens, redirection symbols, pipeline symbols, command operators, command terminators, and parentheses); * [Parsing] parses the sequence of tokens using the grammar in the Appendix and Hwk2/parsley.h; and * [Building the CMD Tree] creates and returns a tree of command structs as specified in the Appendix and Hwk2/parsley.h. As I mentioned in an earlier post, [T]okenization, [P]arsing, and [B]uilding may be done sequentially (T then P then B), or partly in parallel (T+P then B or T then P+B) or entirely in parallel (T+P+B). --Stan-PREV INDEX NEXT