[Ur] "Invalid Link expression" when pulling a function out of a record
Benjamin Barenblat
bbaren at mit.edu
Wed Feb 27 16:55:47 EST 2013
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Howdy all,
The following code works, producing a page with a single link back to
itself.
fun makeLink (r : { Target : (unit -> transaction page) }) : xbody =
<xml>
<a link={r.Target ()}>call</a>
</xml>
fun main () =
return <xml>
<body>
{makeLink { Target = main }}
</body>
</xml>
I've tried changing 'makeLink' to work on arbitrary names, as long as
the record only has one.
fun makeLink [nm ::: Name] (r : { nm : (unit -> transaction page) }) : xbody =
<xml>
<a link={r.nm ()}>call</a>
</xml>
fun main () =
return <xml>
<body>
{makeLink { Target = main }}
</body>
</xml>
However, attempting to compile this yields
test.ur:3:15: (to 3:22) Invalid Link expression
Expression UNBOUND_0.UNBOUND_0 {}
I have no clue what's going on here. What does "Invalid Link
expression" mean?
Thanks in advance,
Benjamin
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
iQEcBAEBCgAGBQJRLoBAAAoJENVJj+fkAhteInsH/AqldnoqL7NAmN4iqBEeMviG
kEXWuy1SW/wZLLQQ7XLWPSPSLokTgsY1P3A1nCwFbG57MF5auBcwZOuesKt5xAhR
idfnUZILj0H8jKikERI5BmZsOjlBDh1be2xHN1fDo/QvXnmJMTB89dqWG4OvBHvk
69yoJBBRQi2uj2GYBgm9V4wkY/qaX9imwONSOBAl89KeacBIcKFEQ/jIX73sXWbD
HxKM9RPrWWK+yQdMWogsWK0GTzndkzm3M7mzVjD3/fQoMLfo/p4FydLwgqSvhmqj
zTH2vya0Q1GY3Hp/yP/sS4zAIxSCcBzCyWzrp8mv9dBcaKFCq4x0L521Uu1DQGg=
=yTqT
-----END PGP SIGNATURE-----
More information about the Ur
mailing list