As an update to my earlier post, I was playing with the parser, and I know I
didn't do it right however I thought I was close.
Can anyone tell me where I went wrong? This is the code I came up with, I
have stepped through how I thought it worked, but it doesn't.
declare
proc{FS P0 P}
P1 in
{FNP P0 P1}
{FVP P1 P}
end
proc{FNP P0 P}
P1 in
{FNP1 P0 P1}
{FNP2 P1 P}
end
proc{FVP P0 P}
P1 P2 in
{FVERB P1 P2}
{FNP2 P2 P}
end
proc{FNP1 P0 P}
{FPRN P0 P}
end
proc{FPRN P0 P}
choice
P0 = je|P
[] P0 = me|P
[] P0 = nous|P
[] P0 = tu|P
[] P0 = te|P
[] P0 = vous|P
[] P0 = il|P
[] P0 = le|P
[] P0 = ils|P
[] P0 = les|P
end
end
proc{FNP2 P0 P}
P1 in
{FDET P0 P1}
{FNOUN P1 P}
end
proc{FDET P0 P}
choice
P0 = le|P
[] P0 = les|P
end
end
proc{FVERB P0 P}
choice
P0 = vois|P
[] P0 = voit|P
[] P0 = voyons|P
[] P0 = voyez|P
[] P0 = voient|P
end
end
proc{FNOUN P0 P}
choice
P0 = chat|P
[] P0 = chats|P
end
end
{Explorer.all proc{$ _}{FS [je vois le chat] nil} end}
--
Kurt Breitsprecher
(807) 474-9601
[email protected]
_________________________________________________________________________________
mozart-users mailing list
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users