[Ur] Grammar/Parser bug?
Saulo Araujo
saulo2 at gmail.com
Fri Oct 7 08:42:45 EDT 2016
Hi,
I am trying to do something like
signature ARGUMENTS = sig
con n1 :: Name
con t1 :: Type
con t2 :: {Type}
constraint [n1] ~ t2
end
signature RESULT = sig
type t
end
functor Functor(A : ARGUMENTS) : RESULT where type t = $([A.n1 = A.t1] ++
A.t2) = struct
open A
type t = $([n1 = t1] ++ t2)
end
but the Ur/Web compiler complains saying:
test.ur:12:58: (to 12:60) syntax error: deleting CSYMBOL DOT
Parse failure
Apparently, one cannot construct type-level records by projecting name
variables from a module. Is this a grammar/parser bug? If so, is there a
workaround?
Sincrely,
Saulo
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.impredicative.com/pipermail/ur/attachments/20161007/391dcde9/attachment.html>
More information about the Ur
mailing list