Chris F Clark schrieb:
> In that sense, a static type system is eliminating tags, because the
> information is pre-computed and not explicitly stored as a part of the
> computation.  Now, you may not view the tag as being there, but in my
> mind if there exists a way of perfoming the computation that requires
> tags, the tag was there and that tag has been eliminated.

On a semantic level, the tag is always there - it's the type (and 
definitely part of an axiomatic definition of the language).
Tag elimination is "just" an optimization.

> To put it another way, I consider the tags to be axiomatic.  Most
> computations involve some decision logic that is driven by distinct
> values that have previously been computed.  The separation of the
> values which drive the compuation one-way versus another is a tag.
> That tag can potentially be eliminated by some apriori computation.

Um... just as precomputing constants, I'd say.
Are the constants that went into a precomputed constant eliminated?
On the implementation level, yes. On the semantic/axiomatic level, no.
Or, well, maybe - since that's just an optimization, the compiler may 
have decided to no precompute the constant at all.

(Agreeing with the snipped parts.)

Regards,
Jo
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to