[m-dev.] EDCG: backwards compatability
Fergus Henderson
fjh at cs.mu.OZ.AU
Wed Jan 26 00:25:35 AEDT 2000
On 25-Jan-2000, Zoltan Somogyi <zs at cs.mu.OZ.AU> wrote:
>
> > :- pred io__make_temp(string, string, string) +hidden(changed(io)).
> > :- mode io__make_temp(in, in, out) is det.
> > % io__mktemp(Dir, Prefix, Name, IO0, IO) creates an empty
>
> For a start, this is a documentation bug.
>
> Beyond that, we can keep io__make_temp at total arity 3 and rename
> the total arity 5 version as io__make_temp_in_dir. This is an incompatibility,
> but it will affect very few people and it is trivial to fix.
>
> We could also do the same with the io__tmpnam predicates, but since they
> was made obsolete 18 months ago, I don't see any reason why we shouldn't
> delete them instead.
Why not leave io__make_temp as a DCG, add `pragma obsolete' for the
total arity 5 version, and add io__make_temp_in_dir with total
arity 5? Then we can change everything except io__make_temp to
use EDCGs. Eventually, after a release or two, we can drop the
one declared `pragma obsolete' and make the other io__make_temp
use EDCGs too.
--
Fergus Henderson <fjh at cs.mu.oz.au> | "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh> | of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3 | -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to: mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions: mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------
More information about the developers
mailing list