[m-dev.] treating `list__append' as `list:append'

Peter Schachte pets at students.cs.mu.oz.au
Mon Feb 10 12:18:18 AEDT 1997

> Add code to treat `__' as an alternative syntax for module qualification.
> The code is currently commented out, because we don't yet support
> module qualification of data constructors.  It should be re-enabled
> as soon as we do.

I hope this is a "feature" that will be removed after a release or
two.  In the long run it really doesn't seem like a very nice
linguistic feature, though I can see that breaking all users' calls to
library predicates could be considered antisocial.

> Index: prog_io.m
> +		string__sub_string_search(Name, "__", LeftLength),
> +		LeftLength > 0

What if LeftLength = 0 (eg, "__foo")?  I would expect this to be
treated as a variable, but this code, when uncommented, will return
ok(unqualified(Name)).  Is this correct?  If Name couldn't be of the
form "__foo", perhaps you could omit the test?

> Index: prog_io_dcg.m
> +	% It fals if the input is not valid syntax for a QualifiedTerm.


> Index: prog_io_goal.m
> +		string__sub_string_search(Name, "__", LeftLength),
> +		LeftLength > 0

As above.

-Peter Schachte      URL:  http://www.cs.mu.oz.au/~pets/
pets at cs.mu.OZ.AU     PGP:  finger pets at for key
    [A computer is] like an Old Testament god, with a lot of rules
    and no mercy.  -- Joseph Campbell

More information about the developers mailing list