[Grace-core] Statically-known and family-polymorphism

Lex Spoon lex at lexspoon.org
Wed Nov 19 06:07:15 PST 2014


>
>
> More generally, there seem( to be several different kinds of
> statically-known or constant timescales and scopes here:
>

There should be a name for this hierarchy, because it comes up for all
manner of programming-language problems. If you are writing a checker,
these are the different times where a property is possible to verify. If
you are writing an optimizer, these are the different places where the
optimizer will know enough to be both effective and  safe.

You can usually do things too late. A context-independent static will still
be static under any of the other definitions. At least in the old days,
Alan Kay encouraged his collaborators to err towards doing everything late,
because he wanted to explore fundamentally new constructs.

For completeness, "link time", or maybe "whole-program static", is
sometimes interesting. It goes between "context-dependent static" and
"context-dependent dynamic". An example would be whole-program dead code
removal. Another example, from my world of the last few years, is
stratifying a Datalog program.


Lex Spoon
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailhost.cecs.pdx.edu/pipermail/grace-core/attachments/20141119/1a43be8a/attachment-0001.html>


More information about the Grace-core mailing list