diff options
| author | Elizabeth Alexander Hunt <me@liz.coffee> | 2026-07-02 11:55:17 -0700 |
|---|---|---|
| committer | Elizabeth Alexander Hunt <me@liz.coffee> | 2026-07-02 11:55:17 -0700 |
| commit | 6bf4b90c90f15f4ab60833bddf5b5756d1a6b1f6 (patch) | |
| tree | ed97e39ec77c5231ffd2c394493e68d00ddac5a4 /Homework/cs5300/project-two/data/pasca.table | |
| download | misc-undergrad-main.tar.gz misc-undergrad-main.zip | |
Diffstat (limited to 'Homework/cs5300/project-two/data/pasca.table')
| -rw-r--r-- | Homework/cs5300/project-two/data/pasca.table | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/Homework/cs5300/project-two/data/pasca.table b/Homework/cs5300/project-two/data/pasca.table new file mode 100644 index 0000000..e3a5733 --- /dev/null +++ b/Homework/cs5300/project-two/data/pasca.table @@ -0,0 +1,122 @@ +// Modify this file to create your tables for the Pasca language. + +// Special tokens are \space, \t and \n. +ClassifierTable +a letter +b letter +c letter +d letter +e letter +f letter +g letter +h letter +i letter +j letter +k letter +l letter +m letter +n letter +o letter +p letter +q letter +r letter +s letter +t letter +u letter +v letter +w letter +x letter +y letter +z letter +0 zero +1 nonzero +2 nonzero +3 nonzero +4 nonzero +5 nonzero +6 nonzero +7 nonzero +8 nonzero +9 nonzero +' quote +* asterisk +{ delim +} delim +; delim +. delim +( lp +) rp +\space whitespace +\t whitespace +\n whitespace + + +// In the transition table, the first state +// is considered the input state. +TransitionTable +// Identifiers +s0 letter id +id letter id +id zero id +id nonzero id + +// Integers +s0 nonzero int +int zero int +int nonzero int + +// Strings +s0 quote q1 +q1 quote str +str quote q1 +// Everything besides quotes +q1 zero q1 +q1 nonzero q1 +q1 letter q1 +q1 delim q1 +q1 asterisk q1 +q1 lp q1 +q1 rp q1 +q1 whitespace q1 + +// Delimiters +s0 delim delimiter + +// Comments +s0 lp c1 +c1 asterisk c2 +c2 asterisk c3 +c3 asterisk c3 +c3 rp ignore + +c3 zero c2 +c3 nonzero c2 +c3 letter c2 +c3 delim c2 +c3 lp c2 +c3 quote c2 +c3 whitespace c2 + +c2 zero c2 +c2 nonzero c2 +c2 letter c2 +c2 delim c2 +c2 rp c2 +c2 lp c2 +c2 whitespace c2 + +// whitespace +s0 whitespace s1 +s1 whitespace s1 + +// If a state has an entry in this table then +// it is considered an accept state. +// "ignore" is a reserved type which indicates +// that the token should be ignored. +TokenTypeTable +id identifier +int integer +str string +delimiter delimiter +ignore ignore +s1 ignore |
