lecture 6 code

This commit is contained in:
Arianna Masciolini
2026-05-04 13:09:20 +02:00
parent f5015adb9a
commit 2cc5040a46
6 changed files with 87 additions and 3 deletions

View File

@@ -0,0 +1,19 @@
import pgf
grammar = pgf.readPGF("Foods.pgf")
parse_lang = grammar.languages["FoodsEng"]
with open("data.csv") as data:
lines = data.readlines()
for line in lines:
[polarity, kind, quality] = line.split(",")
k = [e for (_,e) in parse_lang.parse(kind, cat=pgf.readType("Kind"))][0]
q = [e for (_,e) in parse_lang.parse(quality, cat=pgf.readType("Quality"))][0]
expr_string = "{} (This ({})) ({})".format("Pred" if polarity == "+" else "PredNeg", k, q)
print(expr_string)
expr = pgf.readExpr(expr_string)
for lin_lang in grammar.languages.values():
print(lin_lang.linearize(expr))
print()