[m-dev.] diff: extend support for `any' insts

Fergus Henderson fjh at cs.mu.oz.au
Tue Sep 16 12:09:06 AEST 1997


Peter Schachte, you wrote:
> 
> I'm a bit confused about this change.  If I understood right, you are now
> using the same representation for any mode terms as for bound/ground.  So
> how do you tell whether or not its bound?

Well, if mode analysis infers an inst of `ground' or `bound', then
the answer is known at compile time.
If the inferred inst is `any', then you can tell whether
or not it is bound by examinining the representation.

In the CLP(R) case, variables of type cfloat are represented as
ints (which are actually indexes into a table), and to figure out
whether one is ground you pass the int to a CLP(R) function is_ground(),
which looks up the data in the table.

-- 
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.



More information about the developers mailing list