summaryrefslogtreecommitdiff
path: root/Homework/cs5300/project-two/data
diff options
context:
space:
mode:
authorElizabeth Alexander Hunt <me@liz.coffee>2026-07-02 11:55:17 -0700
committerElizabeth Alexander Hunt <me@liz.coffee>2026-07-02 11:55:17 -0700
commit6bf4b90c90f15f4ab60833bddf5b5756d1a6b1f6 (patch)
treeed97e39ec77c5231ffd2c394493e68d00ddac5a4 /Homework/cs5300/project-two/data
downloadmisc-undergrad-main.tar.gz
misc-undergrad-main.zip
Diffstat (limited to 'Homework/cs5300/project-two/data')
-rw-r--r--Homework/cs5300/project-two/data/err1-pasca.txt1
-rw-r--r--Homework/cs5300/project-two/data/err2-pasca.txt1
-rw-r--r--Homework/cs5300/project-two/data/err3-pasca.txt1
-rw-r--r--Homework/cs5300/project-two/data/pasca.table122
-rw-r--r--Homework/cs5300/project-two/data/register.table33
-rw-r--r--Homework/cs5300/project-two/data/test1-pasca.txt14
-rw-r--r--Homework/cs5300/project-two/data/test2-pasca.txt1
7 files changed, 173 insertions, 0 deletions
diff --git a/Homework/cs5300/project-two/data/err1-pasca.txt b/Homework/cs5300/project-two/data/err1-pasca.txt
new file mode 100644
index 0000000..3316517
--- /dev/null
+++ b/Homework/cs5300/project-two/data/err1-pasca.txt
@@ -0,0 +1 @@
+(* a comment *) *)
diff --git a/Homework/cs5300/project-two/data/err2-pasca.txt b/Homework/cs5300/project-two/data/err2-pasca.txt
new file mode 100644
index 0000000..ba3383f
--- /dev/null
+++ b/Homework/cs5300/project-two/data/err2-pasca.txt
@@ -0,0 +1 @@
+(* a comment
diff --git a/Homework/cs5300/project-two/data/err3-pasca.txt b/Homework/cs5300/project-two/data/err3-pasca.txt
new file mode 100644
index 0000000..40381e2
--- /dev/null
+++ b/Homework/cs5300/project-two/data/err3-pasca.txt
@@ -0,0 +1 @@
+0123
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
diff --git a/Homework/cs5300/project-two/data/register.table b/Homework/cs5300/project-two/data/register.table
new file mode 100644
index 0000000..f22b15e
--- /dev/null
+++ b/Homework/cs5300/project-two/data/register.table
@@ -0,0 +1,33 @@
+// Special tokens are \space, \t and \n.
+ClassifierTable
+r register
+0 digit
+1 digit
+2 digit
+3 digit
+4 digit
+5 digit
+6 digit
+7 digit
+8 digit
+9 digit
+\space whitespace
+\t whitespace
+\n whitespace
+
+// In the transition table, the first state
+// is considered the input state.
+TransitionTable
+s0 register s1
+s1 digit s2
+s2 digit s2
+s0 whitespace s3
+s3 whitespace s3
+
+// 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
+s2 register
+s3 ignore \ No newline at end of file
diff --git a/Homework/cs5300/project-two/data/test1-pasca.txt b/Homework/cs5300/project-two/data/test1-pasca.txt
new file mode 100644
index 0000000..060b972
--- /dev/null
+++ b/Homework/cs5300/project-two/data/test1-pasca.txt
@@ -0,0 +1,14 @@
+begin
+(**)
+(* a straightforward comment *)
+(** a crazy com*ment02 {}() ****)
+program a1 {
+ var0 is 8;
+ (* some crazy identifier names *)
+ var1 var2 variable var1able
+}
+(* some integers *)
+123 1203
+' a crazy string abc(){}*''4013'
+end.
+
diff --git a/Homework/cs5300/project-two/data/test2-pasca.txt b/Homework/cs5300/project-two/data/test2-pasca.txt
new file mode 100644
index 0000000..247411a
--- /dev/null
+++ b/Homework/cs5300/project-two/data/test2-pasca.txt
@@ -0,0 +1 @@
+'alks dfl;alsk k''jk{}'