/CS111_LAB1

TIME TRAVEL SHELL

Primary LanguageC

This is a skeleton for CS 111 Lab 1.

Jason Jiang 604409327
Ji Min Kim 804255847

We implemented the program using tokens in order to keep track of each command character in a more organized fashion. 

An overview of our code is as follows

Read in the input from the console and parse through it intially to remove all comments from the input

Next tokenize the input string in order to make a linked list of tokens (linked tokens) that all have a trait (eg AND, WORD) 
which allows them to be easily processed later in the code 

Once the linked tokens are made, we iterate through those in order to make commands using an algorithm provided by the TA.

With the commands successfuly made we then process those into a tree. We link these trees together to make a command stream

With a command stream made, we then iterate through the command stream to print out the contents of the tree.


=======================
Design Lab 1b
=======================

We added a feature to the first debugging option (-v) that gives programmer an option to go through each command print out one by one instead of printing out everything at once.
The original feature of -v prints out all the characters of the input script file that is being used for the specific program.

Our improved feature will ask the programmer two things:
	1) Go through every command individually
	2) Execute the normal debugging function of sh -v (script_file)

For the second debugging option (-x), we added a function that asks programmer to choose between two options:
	1) Print out only the outputs that should be shown on command line when running the script file
	2) Execute the normal debugging function of sh -x (script_file)