Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
25 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology
Status: New
Owner: ----
Labels: Type-Defect Priority-Medium

New issue 586 by [hidden email]: Compute invocation candidates with  
different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

When you try to import a smalltalk model and select a another strategy than  
the default one, you get some errors

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #1 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

I fixed bugs that came from Famix. Now there seems to be some issues from  
RoelTyper (When I try to import a big model). For example :

    TypeCollector class >> typeInstvar:ofClassWithLookup:
        "self typeInstvar: #origin ofClassWithLookup: Quadrangle"
        | theClass |
        theClass := aClass.
        [theClass isNil not
                and: [(theClass instVarNames includes: var) not]]
                whileTrue: [theClass := theClass superclass].
        theClass isNil
                ifTrue: [^ ExtractedType new].
        ^ self typeInstvar: var ofClass: theClass

If it does not find the instance variable, it returns 'ExtractedType new' ,  
whereas ExtractedType is an abstract class and should not implement 'new'


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #2 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

The importer now check that a FAMIXVariable is an instance variable before  
asking roeltyper to cpmpute its type. Avoid to end up in the case where  
roeltyper does not find the variable.

There is now another problem:
If you try to import all 'Morphic' packages in moose, and select 'compute  
for any kind of receiver', it raise an error

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology
Updates:
        Labels: Component-SmalltalkImporter Milestone-4.4

Comment #3 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

Please do not forget to write tests for these cases.

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #4 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

It would be good to get this nicely working. Cyrille, do you have time to  
look into this?

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #5 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

I gave a solution that make the example working, but I didn't fixed the  
problem.
I flaged the possible bug. Added an example to run (as comment) to  
highlight the problem.
I added a statement for this specific case,  where I return self (not able  
to fix anything).

 From moose point of view, it seems to work nicely.
I think we just let roelTyper less precise for those specific cases (that  
means a set of possible types bigger than if the code was running  
correctly).

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology
Updates:
        Cc: [hidden email]

Comment #6 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

Cyrille can you be more precise ?
where is the flag ? the example ? the statement ?

We should fix the bug !!

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #7 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

All is in TypeCollector >> handleAssignment:forTmp:
I think it's a roel typer issue

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #8 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

Ok thank you.
If it is, could you contact the developer ?

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #9 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

I asked this question on the Pharo mailing list, but I got no answers. The  
RoelTyper issues can be reproduced on several classes. To see the classes  
that raise it and the corresponding errors, you can run:

classes := Dictionary new.
Object withAllSubclassesDo: [:each |
       [(TypeCollector typeInstvarsOfClass: each )] on: Error do: [:error |  
classes at: each put: error ]].
classes inspect


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #10 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

Any chance someone could look at this one?

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

abergel
I will have a look at it tomorrow.

Alexandre

On 8 May 2011, at 17:18, [hidden email] wrote:

>
> Comment #10 on issue 586 by [hidden email]: Compute invocation candidates with different strategies seems to be broken
> http://code.google.com/p/moose-technology/issues/detail?id=586
>
> Any chance someone could look at this one?
>
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.iam.unibe.ch/mailman/listinfo/moose-dev

--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.





_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology
In reply to this post by moose-technology

Comment #11 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

I tried, but no result.
I do not know where to begin, as I do not know RoelTyper

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #12 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

There is still the version RoelTyper-cyrilledelaunay.83
in www.squeaksource.com/RoelTyper that does not concretly fix the problem,  
but just skip the problematic cases.

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #13 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

I tried to use RoelTyper-cyrilledelaunay.83 but it does not work. Try:

- Load the last RoelTyper-cyrilledelaunay.83
- Import AST-Core
- Check the RoelTyper inference

and you will get an error.

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #14 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

Issue 626 has been merged into this issue.

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology
Updates:
        Cc: [hidden email] [hidden email]

Comment #15 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

Cyrille, could you take a look at this?

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #16 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

What do you mean by 'check the roelTyper inference' ?
What I do is:
- Load the last RoelTyper-cyrilledelaunay.83
- Import AST-Core using 'compute for any kind of receiver'

And the model is well imported without error. From that point, what should  
I do to get the error ?

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #17 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

I meant to check the "Compute type of attributes (using RoelTyper)"  
checkbox.

You will get the error also with the RoelTyper-cyrilledelaunay.83.

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Issue 586 in moose-technology: Compute invocation candidates with different strategies seems to be broken

moose-technology

Comment #18 on issue 586 by [hidden email]: Compute invocation  
candidates with different strategies seems to be broken
http://code.google.com/p/moose-technology/issues/detail?id=586

I added a test:

MooseSmalltalkImporterRoelTyperTest>>#testASTCore

Name: Moose-Tests-SmalltalkImporter-Core-TudorGirba.23
Author: TudorGirba
Time: 13 May 2011, 10:34:20 am
UUID: aa6c3196-3946-45c9-8e9d-260fa3ea89be
Ancestors: Moose-Tests-SmalltalkImporter-Core-janniklaval.22

added test to expose the roel typer problem when computing types of  
attributes


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
12