[MLton] Added completion to esml-mlb-mode
Matthew Fluet
fluet@cs.cornell.edu
Fri, 19 Aug 2005 13:46:28 -0400 (EDT)
> > > forceUsed {false|true}
> >
> > This may not be what you want. The forceUsed annotation
> > doesn't actually allow an argument:
> ...
> > An alternative (perhaps better?) would be to change the syntax
> > of forceUsed to require an argument (using makeBool).
>
> Sounds good to me.
Related, the expert annotation ffiStr takes a <longid> argument, not a
"NONE | SOME <longid>" argument.
With regards to forceUsed, remember that it does not mean to mark every
identifier encountered in the body of the annotation as used; instead, it
means to mark as used all identifiers in scope at the end of the
annotation as used.
In fact, ffiStr is somewhat the same -- it "does something" at the end of
the annotation scope, rather than during the elaboration of the body of
the annotation.
That difference in behavior is why it might make sense to leave their
syntax as "action" annotations rather than "toggle" annotations.