[Ur] simple example about constructing rects - guarded types?

Marc Weber marco-oweber at gmx.de
Mon Dec 20 19:15:37 EST 2010


Excerpts from Adam Chlipala's message of Tue Dec 21 00:42:14 +0100 2010:
> Marc Weber wrote:
> > In which way is this related to the
> > e! guarded expression application?
> >    
> 
> The points where these need to be inserted are usually inferred.

The demos make use of it multiple times:

./more/bulkEdit.ur|46| List.app (fn user => dml (update [map fst visible] !
./more/versioned.ur|50| (SQL t.{nm} = {[v]} AND {e [[nm = t] ++ after] !}))
./more/versioned.ur|53| [_] !
./more/dbgrid.ur|385| val wholeRow = @Folder.concat ! M.keyFolder M.rowFolder
./more/dbgrid.ur|406| (WHERE T.{nm} = {@sql_inject meta.Inj v} AND {exp [[nm = t] ++ rest] !}))
./more/dbgrid.ur|409| [_] !
./more/conference.ur|353| dml (update [map fst M.review] ! (ensql M.review r M.reviewFolder)
./more/orm.ur|73| ++ acc [[nm = ts] ++ after] !)
./more/orm.ur|76| [[Id = (id, row)]] !

Or do those ! have a different meaning?

eg the first line is using update

I've tried adding the ! everywhere at the examples you posted. But nothing compiled.

Marc Weber



More information about the Ur mailing list