Trouble installing Chuck
stéphane ducasse
ducasse at iam.unibe.ch
Wed Jun 2 07:35:18 UTC 2004
On 1 juin 04, at 21:13, Lex Spoon wrote:
> =?ISO-8859-1?Q?st=E9phane_ducasse?= <ducasse at iam.unibe.ch> wrote:
>> I read your paper and tried to understand :) Long time ago I read the
>> PhD of Agesen and the master of Garau,
>> but I'm not sure I ever understood :) Anyway the paper is good and I
>> will really have a look at Chuck.
>
> Cool, your feedback is very welcome. Do let me know if anything seems
> particularly confusing, so I can tweak the presentation.
If you want you can do a rehearsal for the squeakers :)
if you want and scg people are good at giving feedback :)
I think that you will have some interesting discussions with roel
because
his prolog (SOUL) type engine seems to perform better than yours
so I imagine that you could really collaborate and analyse that
together.
>> - Could we find a better characterisation of the goals to prune?
>> I imagine that certain smalltalk constructs or highly polymorphic
>> message sends could be prioritize to be pruned
>> first.
>
> Yes, there should be a very rich area of exploration here. I plan to
> work on the pruner in the near future, now that the system as a whole
> is
> working.
>
>
>> - Imagine a Smalltalk variant where we could annotate each AST node
>> with type information, which may be
>> wrong or absent. We could type check the code to make sure that there
>> is a kind of coherence between
>> the annotation but we could use this information for the inferencer.
>> So do you think that this would be worth?
>
> You can do this in Squeak, of course. Nobody stops you from keeping
> track of some annotations on the variables.
>
> If the types are checked, whether statically or dynamically, then Chuck
> could use them as a source of information. In particular, if a
> variable
> v has type T, then Chuck can use T as a bound on whatever type it
> infers
> internally; even if it ends up pruning the goal "find a type of v", it
> can conclude "v : T" instead of "v : Anything".
Yes
>
> If the types are not checked then I don't know what Chuck could do with
> them. For better or worse, I've been instisting that Chuck find
> *sound*
> inferences so long as the program sticks with the core language and
> does
> not do things like redefine methods.
What is a redefine method?
> Given that assumption, how does
> one use a programmer-supplied approximate type? In principle it can
> lead to good heuristics, but I don't know of any *specific* place to
> use
> such information.
Yes I think that annotation should be considered as wrong.
>> - Alternately we could also analyze the name of the variable and
>> extract some kind of type information that
>> we could correlate with your findings.
>
> That would be an interesting experiment. You could also compare the
> names to types determined by running the program. For me, with my
> priorities, it will be years before getting around to such an
> experiment, but if you or anyone goes after it I look forward to seeing
> what you find!
It is good to have Chuck and SOUL this will start to giving us some
ideas
and tools for exploration.
>
> Lex
>
More information about the Squeak-dev
mailing list
|