I tried to import Java sources into MOOSE, but failed with both ways documented on moose.unibe.ch:
- The Eclipse Plugin (http://moose.unibe.ch/tools/j2mse) adds a menu-item to the Project tree, but no matter from where (Project, Package, Class) I try to activate the plugin it says "The chosen operation is not currently available".
- iPlasma (http://moose.unibe.ch/docs/faq/importingWithiPlasma) crashes with a NullPointerException after I select the source folder to import.
How do you import Java sources into Moose? My Software Engineering students would like to play with their code in MOOSE.
Lukas
Hi Lukas,
I started to work on a java importer. It is far from being finished, but it works more or less.
You will find the package JavaSupport4Moose on SCGStore.
It does not work with Java 1.5 although. I will put some effort soon regarding this point.
Cheers, Alexandre
On 17 Dec 2007, at 11:48, Lukas Renggli wrote:
I tried to import Java sources into MOOSE, but failed with both ways documented on moose.unibe.ch:
- The Eclipse Plugin (http://moose.unibe.ch/tools/j2mse) adds a
menu-item to the Project tree, but no matter from where (Project, Package, Class) I try to activate the plugin it says "The chosen operation is not currently available".
crashes with a NullPointerException after I select the source folder to import.
How do you import Java sources into Moose? My Software Engineering students would like to play with their code in MOOSE.
Lukas
-- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Hi Alex,
I started to work on a java importer. It is far from being finished, but it works more or less.
that's great news. When I have a Smalltalk Java parser I can do at least something, if it does not work ;-)
You will find the package JavaSupport4Moose on SCGStore.
That's great, I will have a look.
It does not work with Java 1.5 although. I will put some effort soon regarding this point.
Ok, I see. I don't really care about Generics and Annotations right now. It would be fine just to ignore them.
Cheers, Lukas
It does not work with Java 1.5 although. I will put some effort soon regarding this point.
Ok, I see. I don't really care about Generics and Annotations right now. It would be fine just to ignore them.
Let me know if you give a try.
Alexandre
It does not work with Java 1.5 although. I will put some effort soon regarding this point.
Ok, I see. I don't really care about Generics and Annotations right now. It would be fine just to ignore them.
Let me know if you give a try.
Form the UI point of view, your solution is exactly what I want. Because of the used generics it does not parse my files thought.
Lukas
Form the UI point of view, your solution is exactly what I want. Because of the used generics it does not parse my files thought.
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
I have not idea how to interpret the following errors: ------------------------- Shift/Reduce Conflict
[identifier : . <IDENTIFIER>;"<" "." "["] ***** [Optional: type_arguments : . ;<IDENTIFIER>] ------------------------- Shift/Reduce Conflict
[dot : . ".";"<" "new" <IDENTIFIER> "super" "this"] ***** [Repeat: dim : . ;"[" "."] -------------------------
Alexandre
Isn't there a 1.5 grammar by mike locher somewhere on Store? ^^
AA
On 18 Dec 2007, at 13:15 , Bergel, Alexandre wrote:
Form the UI point of view, your solution is exactly what I want. Because of the used generics it does not parse my files thought.
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
I have not idea how to interpret the following errors:
Shift/Reduce Conflict
[identifier : . <IDENTIFIER>;"<" "." "["] ***** [Optional: type_arguments : . ;<IDENTIFIER>]
Shift/Reduce Conflict
[dot : . ".";"<" "new" <IDENTIFIER> "super" "this"] ***** [Repeat: dim : . ;"[" "."]
Alexandre
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Hi guys,
There still is another solution :-)
I know it's still a bit problematic to get Penumbra / JavaConnect running on different machines than mine, but we're using the Eclipse parser from Smalltalk and you get all that for free. I've been loading jEdit into MOOSE using exactly this technique. I'm happy to help you to get it working too. The problems are often located in different filesystem locations and classpaths, which I'm often able to solve when I see them.
Anyway, Toon and Tudor have been a great help last friday trying it out and hitting some problems, mostly related to the order of installing. I'm trying to get those out too, but if you're interested, I can help you set it up via iChat or phone.
ichat: AIM johanbrichau
cheers, Johan
On 18 Dec 2007, at 13:15, Bergel, Alexandre wrote:
Form the UI point of view, your solution is exactly what I want. Because of the used generics it does not parse my files thought.
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
I have not idea how to interpret the following errors:
Shift/Reduce Conflict
[identifier : . <IDENTIFIER>;"<" "." "["] ***** [Optional: type_arguments : . ;<IDENTIFIER>]
Shift/Reduce Conflict
[dot : . ".";"<" "new" <IDENTIFIER> "super" "this"] ***** [Repeat: dim : . ;"[" "."]
Alexandre
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
---------------------------- Johan Brichau johan.brichau@uclouvain.be
Thanks Johan, do we have somewhere a step-by-step guide on how to get it working? complete from download urls to click here and there etc pp..
cheers, AA
On 18 Dec 2007, at 13:50 , Johan Brichau wrote:
Hi guys,
There still is another solution :-)
I know it's still a bit problematic to get Penumbra / JavaConnect running on different machines than mine, but we're using the Eclipse parser from Smalltalk and you get all that for free. I've been loading jEdit into MOOSE using exactly this technique. I'm happy to help you to get it working too. The problems are often located in different filesystem locations and classpaths, which I'm often able to solve when I see them.
Anyway, Toon and Tudor have been a great help last friday trying it out and hitting some problems, mostly related to the order of installing. I'm trying to get those out too, but if you're interested, I can help you set it up via iChat or phone.
ichat: AIM johanbrichau
cheers, Johan
On 18 Dec 2007, at 13:15, Bergel, Alexandre wrote:
Form the UI point of view, your solution is exactly what I want. Because of the used generics it does not parse my files thought.
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
I have not idea how to interpret the following errors:
Shift/Reduce Conflict
[identifier : . <IDENTIFIER>;"<" "." "["] ***** [Optional: type_arguments : . ;<IDENTIFIER>]
Shift/Reduce Conflict
[dot : . ".";"<" "new" <IDENTIFIER> "super" "this"] ***** [Repeat: dim : . ;"[" "."]
Alexandre
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Johan Brichau johan.brichau@uclouvain.be
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
http://www.info.ucl.ac.be/~jbrichau/penumbra.html
Adrian Kuhn wrote:
Thanks Johan, do we have somewhere a step-by-step guide on how to get it working? complete from download urls to click here and there etc pp..
cheers, AA
On 18 Dec 2007, at 13:50 , Johan Brichau wrote:
Hi guys,
There still is another solution :-)
I know it's still a bit problematic to get Penumbra / JavaConnect running on different machines than mine, but we're using the Eclipse parser from Smalltalk and you get all that for free. I've been loading jEdit into MOOSE using exactly this technique. I'm happy to help you to get it working too. The problems are often located in different filesystem locations and classpaths, which I'm often able to solve when I see them.
Anyway, Toon and Tudor have been a great help last friday trying it out and hitting some problems, mostly related to the order of installing. I'm trying to get those out too, but if you're interested, I can help you set it up via iChat or phone.
ichat: AIM johanbrichau
cheers, Johan
On 18 Dec 2007, at 13:15, Bergel, Alexandre wrote:
Form the UI point of view, your solution is exactly what I want. Because of the used generics it does not parse my files thought.
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
I have not idea how to interpret the following errors:
Shift/Reduce Conflict
[identifier : . <IDENTIFIER>;"<" "." "["] ***** [Optional: type_arguments : . ;<IDENTIFIER>]
Shift/Reduce Conflict
[dot : . ".";"<" "new" <IDENTIFIER> "super" "this"] ***** [Repeat: dim : . ;"[" "."]
Alexandre
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Johan Brichau johan.brichau@uclouvain.be
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Hi Johan,
Thanks for reminding us :). I got so used with having the Java parsing solution from outside VW that I did not even consider thinking about it.
I added two new FAQ pages: http://moose.unibe.ch/docs/faq/importJava http://moose.unibe.ch/docs/faq/importWithPenumbra
Cheers, Doru
On Dec 18, 2007, at 1:50 PM, Johan Brichau wrote:
Hi guys,
There still is another solution :-)
I know it's still a bit problematic to get Penumbra / JavaConnect running on different machines than mine, but we're using the Eclipse parser from Smalltalk and you get all that for free. I've been loading jEdit into MOOSE using exactly this technique. I'm happy to help you to get it working too. The problems are often located in different filesystem locations and classpaths, which I'm often able to solve when I see them.
Anyway, Toon and Tudor have been a great help last friday trying it out and hitting some problems, mostly related to the order of installing. I'm trying to get those out too, but if you're interested, I can help you set it up via iChat or phone.
ichat: AIM johanbrichau
cheers, Johan
On 18 Dec 2007, at 13:15, Bergel, Alexandre wrote:
Form the UI point of view, your solution is exactly what I want. Because of the used generics it does not parse my files thought.
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
I have not idea how to interpret the following errors:
Shift/Reduce Conflict
[identifier : . <IDENTIFIER>;"<" "." "["] ***** [Optional: type_arguments : . ;<IDENTIFIER>]
Shift/Reduce Conflict
[dot : . ".";"<" "new" <IDENTIFIER> "super" "this"] ***** [Repeat: dim : . ;"[" "."]
Alexandre
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Johan Brichau johan.brichau@uclouvain.be
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com www.tudorgirba.com/blog
"It's not how it is, it is how we see it."
Thank you!
AA
On 18 Dec 2007, at 14:10 , Tudor Girba wrote:
Hi Johan,
Thanks for reminding us :). I got so used with having the Java parsing solution from outside VW that I did not even consider thinking about it.
I added two new FAQ pages: http://moose.unibe.ch/docs/faq/importJava http://moose.unibe.ch/docs/faq/importWithPenumbra
Cheers, Doru
On Dec 18, 2007, at 1:50 PM, Johan Brichau wrote:
Hi guys,
There still is another solution :-)
I know it's still a bit problematic to get Penumbra / JavaConnect running on different machines than mine, but we're using the Eclipse parser from Smalltalk and you get all that for free. I've been loading jEdit into MOOSE using exactly this technique. I'm happy to help you to get it working too. The problems are often located in different filesystem locations and classpaths, which I'm often able to solve when I see them.
Anyway, Toon and Tudor have been a great help last friday trying it out and hitting some problems, mostly related to the order of installing. I'm trying to get those out too, but if you're interested, I can help you set it up via iChat or phone.
ichat: AIM johanbrichau
cheers, Johan
On 18 Dec 2007, at 13:15, Bergel, Alexandre wrote:
Form the UI point of view, your solution is exactly what I want. Because of the used generics it does not parse my files thought.
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
I have not idea how to interpret the following errors:
Shift/Reduce Conflict
[identifier : . <IDENTIFIER>;"<" "." "["] ***** [Optional: type_arguments : . ;<IDENTIFIER>]
Shift/Reduce Conflict
[dot : . ".";"<" "new" <IDENTIFIER> "super" "this"] ***** [Repeat: dim : . ;"[" "."]
Alexandre
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Johan Brichau johan.brichau@uclouvain.be
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com www.tudorgirba.com/blog
"It's not how it is, it is how we see it."
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Thanks, I just updated the webpages of javaconnect and penumbra too to reflect minor differences with the current version on the store. In addition, I'm writing code to verify the installation and producing understandable errors instead of merely being buggy :-) Most probably to publish tonight.
On 18 Dec 2007, at 14:10, Tudor Girba wrote:
Hi Johan,
Thanks for reminding us :). I got so used with having the Java parsing solution from outside VW that I did not even consider thinking about it.
I added two new FAQ pages: http://moose.unibe.ch/docs/faq/importJava http://moose.unibe.ch/docs/faq/importWithPenumbra
Cheers, Doru
On Dec 18, 2007, at 1:50 PM, Johan Brichau wrote:
Hi guys,
There still is another solution :-)
I know it's still a bit problematic to get Penumbra / JavaConnect running on different machines than mine, but we're using the Eclipse parser from Smalltalk and you get all that for free. I've been loading jEdit into MOOSE using exactly this technique. I'm happy to help you to get it working too. The problems are often located in different filesystem locations and classpaths, which I'm often able to solve when I see them.
Anyway, Toon and Tudor have been a great help last friday trying it out and hitting some problems, mostly related to the order of installing. I'm trying to get those out too, but if you're interested, I can help you set it up via iChat or phone.
ichat: AIM johanbrichau
cheers, Johan
On 18 Dec 2007, at 13:15, Bergel, Alexandre wrote:
Form the UI point of view, your solution is exactly what I want. Because of the used generics it does not parse my files thought.
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
I have not idea how to interpret the following errors:
Shift/Reduce Conflict
[identifier : . <IDENTIFIER>;"<" "." "["] ***** [Optional: type_arguments : . ;<IDENTIFIER>]
Shift/Reduce Conflict
[dot : . ".";"<" "new" <IDENTIFIER> "super" "this"] ***** [Repeat: dim : . ;"[" "."]
Alexandre
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Johan Brichau johan.brichau@uclouvain.be
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com www.tudorgirba.com/blog
"It's not how it is, it is how we see it."
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
---------------------------- Johan Brichau johan.brichau@uclouvain.be
That's interesting.
Some issues:
- "Load the latest stable Penumbra bundle from Cincom Smalltalk public repository." There is no stable bundle, just development bundles.
- "Download the sadun-utility jar file from Cristiano Sadun's sourceforge website, or directly here." The "here" link gives a version that does not seem to work. I tried to download directly from SourceForge and it worked.
- "After a succesful startup, the JavaConnect Browser will appear." After closing a few debuggers this works.
- "After eclipse was started, you can use a Penumbra plugin application." I don't understand this sentence. What should I do? Where do I get my Eclipse projects?
Cheers, Lukas
Hi Lukas,
On 19 Dec 2007, at 09:48, Lukas Renggli wrote:
- "Download the sadun-utility jar file from Cristiano Sadun's
sourceforge website, or directly here." The "here" link gives a version that does not seem to work. I tried to download directly from SourceForge and it worked.
hm... maybe that's a coincidence. My colleagues use the version they downloaded from my website and that works fine.
- "After a succesful startup, the JavaConnect Browser will appear."
After closing a few debuggers this works.
The debuggers are not intended :-) It would be interesting to know which errors you get though.
- "After eclipse was started, you can use a Penumbra plugin
application." I don't understand this sentence. What should I do? Where do I get my Eclipse projects?
The Penumbra plugins are mentioned right under that sentence on the http://www.info.ucl.ac.be/~jbrichau/penumbra.html webpage. But does this mean the starting of eclipse worked directly on your system?
* Penumbra-Moose is available from the cincom repository and if you install that (when Moose is installed in your image), you will see an import from eclipse menu option in Moose. * Soul-Cava is another plugin we are using extensively (Soul logic rules that reason immediately about eclipse parsetrees) but which is not public yet.
---------------------------- Johan Brichau johan.brichau@uclouvain.be
- "Download the sadun-utility jar file from Cristiano Sadun's
sourceforge website, or directly here." The "here" link gives a version that does not seem to work. I tried to download directly from SourceForge and it worked.
hm... maybe that's a coincidence. My colleagues use the version they downloaded from my website and that works fine.
After following your instructions from a clean image (on VisualWorks 7.5, Mac Intel) I get stack trace below when starting JavaConntect. If I use org.sadun.util.jar from SourceForge instead of the one file linked from your site, it works and I end up within the JavaConnect Browser.
Then I set the workspace location and start Eclipse. It seems that this happens in the background, as I can't see anything starting (it just takes a while). Is that correct?
Now I notice that the Penumbra-Moose has troubles if Eclipse is already running. So I restart the image and try again without using the PenumbraConsole. I get a debugger as it tries to import an Enum, so I hack your code to only consider interfaces and classes.
It works. Thank you very much!
Cheers, Lukas
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Unhandled exception: The identifier JavaWorld.org.sadun.util.SimpleClassPackageExplorer has no binding LiteralBindingReference(Object)>>error: LiteralBindingReference(GeneralBindingReference)>>binding LiteralBindingReference(GeneralBindingReference)>>value optimized [] in JavaConnect.JavaConnectBrowser>>classExplorer UndefinedObject>>ifNil: JavaConnect.JavaConnectBrowser>>classExplorer optimized [] in JavaConnect.JavaConnectBrowser>>loadPackages BlockClosure>>ensure: Cursor>>showWhile: JavaConnect.JavaConnectBrowser>>loadPackages JavaConnect.JavaConnectBrowser class>>openAndLoadPackages optimized [] in VisualLauncher>>openJavaConnect ByteSymbol(Object)>>ifNotNil: VisualLauncher>>openJavaConnect optimized [] in ApplicationModel>>actionFor: optimized [] in ToolBar>>newButtonFor: PluggableAdaptor>>setValue: PluggableAdaptor(ValueModel)>>value: Win98ToolbarButtonController(TriggerButtonController)>>pressAction TriggerButtonTracker(BasicButtonTracker)>>finishSelectionFor: TriggerButtonTracker>>finishSelectionFor: TriggerButtonTracker(SelectionTracker)>>redButtonReleasedEvent: RedButtonReleasedEvent>>dispatchTo: TriggerButtonTracker(SelectionTracker)>>handleEvent: EventDispatcher>>dispatch:to: EventDispatcher>>dispatchEvent: RedButtonReleasedEvent(Event)>>dispatch RedButtonReleasedEvent(Event)>>dispatchForWindowManager: optimized [] in WindowManager>>safelyDispatchForWindowManager: BlockClosure>>on:do: WindowManager>>safelyDispatchForWindowManager: WindowManager>>processNextEvent optimized [] in [] in WindowManager>>newProcess BlockClosure>>on:do: optimized [] in WindowManager>>newProcess BlockClosure>>on:do: optimized [] in Process class>>forBlock:priority:
---------------------------------------------------------------------- LiteralBindingReference(Object)>>error: Receiver: a LiteralBindingReference Instance Variables: path = an Array[5] cache = #notFound method = CompiledBlock [] in JavaConnect.JavaConnectBrowser>>classExplorer Arguments: aStringOrMessage = 'The identifier JavaWorld.org....ckageExplorer has no binding' Temporaries: lastNonSpace = 81 aString = 'The identifier JavaWorld.org....ckageExplorer has no binding' Context PC = 18
---------------------------------------------------------------------- LiteralBindingReference(GeneralBindingReference)>>binding Receiver: a LiteralBindingReference Instance Variables: path = an Array[5] cache = #notFound method = CompiledBlock [] in JavaConnect.JavaConnectBrowser>>classExplorer Temporaries: b = nil Context PC = 23
---------------------------------------------------------------------- LiteralBindingReference(GeneralBindingReference)>>value Receiver: a LiteralBindingReference Instance Variables: path = an Array[5] cache = #notFound method = CompiledBlock [] in JavaConnect.JavaConnectBrowser>>classExplorer Context PC = 4
---------------------------------------------------------------------- optimized [] in JavaConnect.JavaConnectBrowser>>classExplorer Receiver: an UndefinedObject Temporaries: .self = a JavaConnect.JavaConnectBrowser test = nil Context PC = 4
---------------------------------------------------------------------- UndefinedObject>>ifNil: Receiver: an UndefinedObject Arguments: aBlock = BlockClosure [] in JavaConnect.JavaConnectBrowser>>classExplorer Context PC = 3
---------------------------------------------------------------------- JavaConnect.JavaConnectBrowser>>classExplorer Receiver: a JavaConnect.JavaConnectBrowser Instance Variables: dependents = nil builder = nil uiSession = nil eventHandlers = nil classList = nil packages = nil selectorsList = nil systemproperties = nil propertyValues = nil selectedProperty = nil classExplorer = nil options = nil Temporaries: test = nil Context PC = 11
---------------------------------------------------------------------- optimized [] in JavaConnect.JavaConnectBrowser>>loadPackages Receiver: an UndefinedObject Temporaries: .self = a JavaConnect.JavaConnectBrowser allPackageNames = nil size = nil progressModel = nil windowController = nil Context PC = 6
---------------------------------------------------------------------- BlockClosure>>ensure: Receiver: a BlockClosure Instance Variables: method = CompiledBlock [] in JavaConnect.JavaConnectBrowser>>loadPackages outerContext = nil copiedValues = an Array[2] Arguments: aBlock = BlockClosure [] in Cursor>>showWhile: Temporaries: result = nil Context PC = 4
---------------------------------------------------------------------- Cursor>>showWhile: Receiver: a Cursor Instance Variables: errorCode = 0 handle = a ByteArray[4] image = Depth1Image(extent: 16@16 depth: 1) mask = Depth1Image(extent: 16@16 depth: 1) hotSpot = 0@0 name = 'wait' Arguments: aBlock = BlockClosure [] in JavaConnect.JavaConnectBrowser>>loadPackages Temporaries: oldcursor = Cursor normal Context PC = 23
---------------------------------------------------------------------- JavaConnect.JavaConnectBrowser>>loadPackages Receiver: a JavaConnect.JavaConnectBrowser Instance Variables: dependents = nil builder = nil uiSession = nil eventHandlers = nil classList = nil packages = nil selectorsList = nil systemproperties = nil propertyValues = nil selectedProperty = nil classExplorer = nil options = nil Temporaries: allPackageNames = nil size = nil progressModel = nil windowController = nil Context PC = 14
---------------------------------------------------------------------- JavaConnect.JavaConnectBrowser class>>openAndLoadPackages Receiver: a JavaConnect.JavaConnectBrowser class Instance Variables: superclass = ApplicationModel methodDict = a MethodDictionary[22] format = 16396 subclasses = nil instanceVariables = an Array[8] organization = ('aspects' #classList #packages #selectorsList) ('private' #allPackagesBelow: #classExplorer #loadClassesInPackage:progressModel: #loadClassesInPackageRecursively:packagesProgressModel:classesProgressModel: #options) ('menu actions' #loadClassesInSelectedPackage #loadClassesInSelectedPackageRecursively #loadPackages #openSystemProperties #optionsEditor #startJVM #stopJVM) ('menu enabling/disabling' #jvmisActive #jvmisNotActive) ('aspects - system properties' #selectedProperty #systemproperties) ('events' #classSelectionChanged #packageSelectionChanged) ('actions' #refreshPackages)
name = #JavaConnectBrowser classPool = a NameSpaceOfClass[0] environment = a NameSpace[42] savedWindowInformation = nil Temporaries: instance = a JavaConnect.JavaConnectBrowser Context PC = 7
---------------------------------------------------------------------- optimized [] in VisualLauncher>>openJavaConnect Receiver: an UndefinedObject Temporaries: .configurationKey = #default Context PC = 11
---------------------------------------------------------------------- ByteSymbol(Object)>>ifNotNil: Receiver: a ByteSymbol Arguments: aBlock = BlockClosure [] in VisualLauncher>>openJavaConnect Context PC = 10
---------------------------------------------------------------------- VisualLauncher>>openJavaConnect Receiver: a VisualLauncher Instance Variables: dependents = an ApplicationWindow 5116992 builder = an UIBuilder uiSession = a ControlManager eventHandlers = nil menuBar = a Menu toolBar = a ValueHolder on: a Menu textCollector = a TextCollector on: Text for ' visualnc.im created at April 17, 2007 10:52:24 am Unloading package: ''Non-Commercialization'' Rescuing source in $(VISUALWORKS)/parcels/Non-Commercialization.pst...(none) Copying /Applications/VisualWorks/image/visualnc.cha to /Applications/VisualWorks/image/visual.cha... done
/Applications/VisualWorks/image/visual.im created at December 10, 2007 4:12:47 am /Applications/VisualWorks/image/visual.im created at December 10, 2007 4:14:52 am /Applications/VisualWorks/image/visual.im created at December 18, 2007 2:00:02 am /Applications/VisualWorks/image/visual.im created at December 18, 2007 2:02:18 am /Applications/VisualWorks/image/visual.im created at December 20, 2007 12:13:25 am Copying /Applications/VisualWorks/image/visual.cha to /Applications/VisualWorks/image/moose-java.cha... done
/Applications/VisualWorks/image/moose-java.im created at December 20, 2007 12:13:37 am Loading JavaConnect . . . Autoloading DLLCC from $(VISUALWORKS)/dllcc/DLLCC.pcl Autoloading Weaklings from $(VISUALWORKS)/contributed/Weaklings.pcl (UndefinedObject #DoIt - undeclaredSoftLink) (UndefinedObject #DoIt - undeclaredSoftLink) (UndefinedObject #DoIt - undeclaredSoftLink) (JavaConnect.JavaConnectSubSystem #canActivate - JavaVM is undeclared) (JavaConnect.JavaVM class #bootstrapPackages - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapThrowable - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapArrays - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapMethod - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapString - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapClass - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapConstructor - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapModifier - undeclaredSoftLink) (JavaConnect.JavaVM class #resetJavaNamespace - undeclaredSoftLink) (JavaConnect.JavaVM class #resetJavaNamespace - undeclaredSoftLink) (JavaConnect.JavaVM class #resetJavaNamespace - undeclaredSoftLink) (JavaConnect.JavaVM class #resetJavaNamespace - undeclaredSoftLink) (JavaConnect.JavaVM class #resetJavaNamespace - undeclaredSoftLink) (JavaConnect.JavaVM class #resetJavaNamespace - undeclaredSoftLink) (JavaConnect.JavaVM class #resetJavaNamespace - undeclaredSoftLink) (JavaConnect.JavaVM class #resetJavaNamespace - undeclaredSoftLink) (JavaConnect.JavaVM class #resetJavaNamespace - undeclaredSoftLink) (JavaConnect.JavaVM class #resetJavaNamespace - undeclaredSoftLink) (JavaConnect.JavaVM class #resetJavaNamespace - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapJavaConnect - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapJavaConnect - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapJavaConnect - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapJavaConnect - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapJavaConnect - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapJavaConnect - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapJavaConnect - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapJavaConnect - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapJavaConnect - undeclaredSoftLink) (JavaConnect.JavaVM class #bootstrapField - undeclaredSoftLink) (JavaConnect.JavaObjectArray #hashCode - undeclaredSoftLink) (JavaConnect.JavaCharArray #hashCode - undeclaredSoftLink) (JavaConnect.JavaPackage class #loadPackageNamed: - JavaWorld is undeclared) (JavaConnect.JavaPackage #javaPackageName - undeclaredSoftLink) (JavaConnect.JavaPackage #javaPackageNamed: - undeclaredSoftLink) (JavaConnect.JavaPackage #javaPackageNamed: - undeclaredSoftLink) (JavaConnect.JavaBooleanArray #hashCode - undeclaredSoftLink) (JavaConnect.JavaClass class #uninitializedClassNamed:inPackage: - undeclaredSoftLink) (JavaConnect.JavaClass #initializeJavaMethods - undeclaredSoftLink) (JavaConnect.JavaClass #initializeJavaMethods - undeclaredSoftLink) (JavaConnect.JavaClass #javalangClass - undeclaredSoftLink) (JavaConnect.JavaClass #retrieveJavaSourceFor:fromJarFile: - undeclaredSoftLink) (JavaConnect.JavaClass #retrieveJavaSourceFor:fromJarFile: - undeclaredSoftLink) (JavaConnect.JavaClass #retrieveJavaSourceFor:fromJarFile: - undeclaredSoftLink) (JavaConnect.JavaClass #retrieveJavaSource - undeclaredSoftLink) (JavaConnect.JavaClass #retrieveJavaSource - result - readBeforeWritten) (JavaConnect.JavaClass #initializeFields - undeclaredSoftLink) (JavaConnect.JavaClass #initializeFields - undeclaredSoftLink) (JavaConnect.JNINativeInterface #throwException - undeclaredSoftLink) (JavaConnect.JavaCompiledMethod #retrieveJavaSource - undeclaredSoftLink) (JavaConnect.JavaCompiledMethod #retrieveJavaSource - result - readBeforeWritten) (JavaConnect.JavaCompiledMethod #retrieveJavaSourceFor:fromJarFile: - undeclaredSoftLink) (JavaConnect.JavaCompiledMethod #retrieveJavaSourceFor:fromJarFile: - undeclaredSoftLink) (JavaConnect.JavaCompiledMethod #retrieveJavaSourceFor:fromJarFile: - undeclaredSoftLink) (JavaConnect.JavaIntArray #hashCode - undeclaredSoftLink) (CPointer #asSmalltalkValueForArrayType: - undeclaredSoftLink) (CPointer #asSmalltalkValueForType: - undeclaredSoftLink) (CPointer #asSmalltalkValueForObjectType: - undeclaredSoftLink) (CPointer #asSmalltalkValueForObjectArrayType: - undeclaredSoftLink) (String #asJavaValue - undeclaredSoftLink) (JavaConnect.JavaConnectBrowser #classExplorer - undeclaredSoftLink) (JavaConnect.JavaConnectBrowser #classExplorer - undeclaredSoftLink) (JavaConnect.JavaConnectBrowser #systemproperties - undeclaredSoftLink) (JavaConnect.CoreJavaTests #test8bitStringEncodingDecoding - undeclaredSoftLink) (JavaConnect.CoreJavaTests #testNativeValueTypes - undeclaredSoftLink) (JavaConnect.CoreJavaTests #testStatics - undeclaredSoftLink) (JavaConnect.CoreJavaTests #testStatics - undeclaredSoftLink) (JavaConnect.CoreJavaTests #testEmptyStringEncodingDecoding - undeclaredSoftLink) (JavaConnect.CoreJavaTests #test16bitStringEncodingDecoding - undeclaredSoftLink) (JavaConnect.CoreJavaTests #testEmptyStringDecoding - undeclaredSoftLink) (JavaConnect.CoreJavaTests #testStringEncodingDecoding - undeclaredSoftLink) (JavaConnect.CoreJavaTests #test8BitStringDecoding - undeclaredSoftLink) (JavaConnect.CoreJavaTests #test16BitStringDecoding - undeclaredSoftLink) (JavaConnect.KernelTests #testLoadedFields - undeclaredSoftLink) (JavaConnect.KernelTests #testObjectReturns - undeclaredSoftLink) (JavaConnect.KernelTests #testOverLoadedMethods - undeclaredSoftLink) (JavaConnect.KernelTests #testOverLoadedMethods - undeclaredSoftLink) (JavaConnect.KernelTests #testOverLoadedMethods - undeclaredSoftLink) (JavaConnect.KernelTests #testLoadedMethods - undeclaredSoftLink) Done ' toolDock = a VisualLauncherToolDock Temporaries: choices = an Array[2] configurationKey = #default Context PC = 37
---------------------------------------------------------------------- optimized [] in ApplicationModel>>actionFor: Receiver: an UndefinedObject Temporaries: .self = a VisualLauncher .aKey = #openJavaConnect Context PC = 7
---------------------------------------------------------------------- optimized [] in ToolBar>>newButtonFor: Receiver: an UndefinedObject Arguments: b = a ValueHolder on: nil v = true Temporaries: .self = a Win98ToolBar .item = a MenuItem 'JavaConnect' Context PC = 19
---------------------------------------------------------------------- PluggableAdaptor>>setValue: Receiver: a PluggableAdaptor Instance Variables: dependents = a Win98ToolbarButtonView model = a ValueHolder on: nil getBlock = BlockClosure [] in ToolBar>>newButtonFor: putBlock = BlockClosure [] in ToolBar>>newButtonFor: updateBlock = BlockClosure [] in ToolBar>>newButtonFor: Arguments: newValue = true Context PC = 6
---------------------------------------------------------------------- PluggableAdaptor(ValueModel)>>value: Receiver: a PluggableAdaptor Instance Variables: dependents = a Win98ToolbarButtonView model = a ValueHolder on: nil getBlock = BlockClosure [] in ToolBar>>newButtonFor: putBlock = BlockClosure [] in ToolBar>>newButtonFor: updateBlock = BlockClosure [] in ToolBar>>newButtonFor: Arguments: newValue = true Context PC = 5
---------------------------------------------------------------------- Win98ToolbarButtonController(TriggerButtonController)>>pressAction Receiver: a Win98ToolbarButtonController Instance Variables: model = a PluggableAdaptor view = a Win98ToolbarButtonView sensor = a TranslatingSensor keyboardProcessor = nil keyboardHook = nil dispatcher = nil Context PC = 17
---------------------------------------------------------------------- TriggerButtonTracker(BasicButtonTracker)>>finishSelectionFor: Receiver: a TriggerButtonTracker Instance Variables: controller = a Win98ToolbarButtonController inside = true Arguments: aPoint = 8@5 Context PC = 8
---------------------------------------------------------------------- TriggerButtonTracker>>finishSelectionFor: Receiver: a TriggerButtonTracker Instance Variables: controller = a Win98ToolbarButtonController inside = true Arguments: aPoint = 8@5 Context PC = 11
---------------------------------------------------------------------- TriggerButtonTracker(SelectionTracker)>>redButtonReleasedEvent: Receiver: a TriggerButtonTracker Instance Variables: controller = a Win98ToolbarButtonController inside = true Arguments: aMouseButtonEvent = a RedButtonReleasedEvent Context PC = 13
---------------------------------------------------------------------- RedButtonReleasedEvent>>dispatchTo: Receiver: a RedButtonReleasedEvent Instance Variables: time = 39244609 initiator = an EventDispatcher window = an ApplicationWindow 5116992 state = 0 x = 248 y = 31 gx = 383 gy = 84 buttonNumber = 1 Arguments: anObject = a TriggerButtonTracker Context PC = 4
---------------------------------------------------------------------- TriggerButtonTracker(SelectionTracker)>>handleEvent: Receiver: a TriggerButtonTracker Instance Variables: controller = a Win98ToolbarButtonController inside = true Arguments: anEvent = a RedButtonReleasedEvent Context PC = 4
---------------------------------------------------------------------- EventDispatcher>>dispatch:to: Receiver: an EventDispatcher Instance Variables: windowController = an ApplicationStandardSystemController currentMouseConsumer = nil grabbingMouse = false keyboardProcessor = nil lastControlObject = nil trapList = nil state = nil repairDamageWhenDebugging = true flushQueueAfterError = true distributeEventsWhenDebugging = true dragDropInProgress = false dragDropTracker = nil dispatchUnknownEvents = false Arguments: event = a RedButtonReleasedEvent object = a TriggerButtonTracker Temporaries: tmp = nil Context PC = 10
---------------------------------------------------------------------- EventDispatcher>>dispatchEvent: Receiver: an EventDispatcher Instance Variables: windowController = an ApplicationStandardSystemController currentMouseConsumer = nil grabbingMouse = false keyboardProcessor = nil lastControlObject = nil trapList = nil state = nil repairDamageWhenDebugging = true flushQueueAfterError = true distributeEventsWhenDebugging = true dragDropInProgress = false dragDropTracker = nil dispatchUnknownEvents = false Arguments: event = a RedButtonReleasedEvent Temporaries: objectWantingControl = nil targetKeyboardProcessor = nil Context PC = 60
---------------------------------------------------------------------- RedButtonReleasedEvent(Event)>>dispatch Receiver: a RedButtonReleasedEvent Instance Variables: time = 39244609 initiator = an EventDispatcher window = an ApplicationWindow 5116992 state = 0 x = 248 y = 31 gx = 383 gy = 84 buttonNumber = 1 Context PC = 16
---------------------------------------------------------------------- RedButtonReleasedEvent(Event)>>dispatchForWindowManager: Receiver: a RedButtonReleasedEvent Instance Variables: time = 39244609 initiator = an EventDispatcher window = an ApplicationWindow 5116992 state = 0 x = 248 y = 31 gx = 383 gy = 84 buttonNumber = 1 Arguments: aWinMgr = a WindowManager Context PC = 4
---------------------------------------------------------------------- optimized [] in WindowManager>>safelyDispatchForWindowManager: Receiver: an UndefinedObject Temporaries: .event = a RedButtonReleasedEvent .self = a WindowManager Context PC = 6
---------------------------------------------------------------------- BlockClosure>>on:do: Receiver: a BlockClosure Instance Variables: method = CompiledBlock [] in WindowManager>>safelyDispatchForWindowManager: outerContext = nil copiedValues = an Array[2] Arguments: anExceptionSelector = BadControllerError handlerBlock = BlockClosure [] in WindowManager>>safelyDispatchForWindowManager: Context PC = 18
---------------------------------------------------------------------- WindowManager>>safelyDispatchForWindowManager: Receiver: a WindowManager Instance Variables: windows = an OrderedCollection[1] activeController = nil interruptLock = false outstandingMetaOrDamage = false openInProgress = false eventQueue = an EventQueue baseProcess = a Process in Semaphore>>wait dontFilterEvents = false Arguments: event = a RedButtonReleasedEvent Context PC = 13
---------------------------------------------------------------------- WindowManager>>processNextEvent Receiver: a WindowManager Instance Variables: windows = an OrderedCollection[1] activeController = nil interruptLock = false outstandingMetaOrDamage = false openInProgress = false eventQueue = an EventQueue baseProcess = a Process in Semaphore>>wait dontFilterEvents = false Temporaries: event = a RedButtonReleasedEvent Context PC = 9
---------------------------------------------------------------------- optimized [] in [] in WindowManager>>newProcess Receiver: an UndefinedObject Temporaries: .self = a WindowManager Context PC = 13
---------------------------------------------------------------------- BlockClosure>>on:do: Receiver: a BlockClosure Instance Variables: method = CompiledBlock [] in [] in WindowManager>>newProcess outerContext = nil copiedValues = a WindowManager Arguments: anExceptionSelector = TerminateException handlerBlock = BlockClosure [] in [] in WindowManager>>newProcess Context PC = 18
---------------------------------------------------------------------- optimized [] in WindowManager>>newProcess Receiver: an UndefinedObject Temporaries: .self = a WindowManager Context PC = 15
---------------------------------------------------------------------- BlockClosure>>on:do: Receiver: a BlockClosure Instance Variables: method = CompiledBlock [] in WindowManager>>newProcess outerContext = nil copiedValues = a WindowManager Arguments: anExceptionSelector = TerminateException handlerBlock = BlockClosure [] in [] in Process class>>forBlock:priority: Context PC = 18
---------------------------------------------------------------------- optimized [] in Process class>>forBlock:priority: Receiver: an UndefinedObject Temporaries: .aBlock = BlockClosure [] in WindowManager>>newProcess Context PC = 9
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Hi,
Great to hear it's working at least ;-) I hope to find some time for cleaning the code and making it more platform-independent, but it's encouraging at least.
On 20 Dec 2007, at 11:06, Lukas Renggli wrote:
Then I set the workspace location and start Eclipse. It seems that this happens in the background, as I can't see anything starting (it just takes a while). Is that correct?
Yes. Eclipse is started 'headless' as a java application, running the Penumbra Eclipse plugin as the main application. When eclipse is started, the only thing you notice is that the button label changes to 'stop eclipse'. (However, restarting eclipse in the same image is still a problem, we will solve that later.).
The actual plugin instance (a Java object) is available from within Smalltalk as the singleton instance of the PenumbraApplication class. You can retrieve it by executing:
JavaWorldPrototypes.org.dmp.penumbra.PenumbraApplication current.
(for now, please forget and forgive that the class side is in another namespace than the actual object you obtain. this is another point on our todo list) You can inspect that object and take a look at the methods you can send it. For example, you can get the javaModel instance:
pluginObject getJavaModel
-or you can retrieve all CompilationUnit parsetrees from a project doing the following:
pluginObject getCompilationUnitsForProject_IJavaProject: (pluginObject getJavaModel getJavaProjects asOrderedCollection first)
There's more when using the TableGatheringVisitor that is also packaged in there. It can walk all parsetrees and gather enums, classes, interfaces and methods separately.
Now I notice that the Penumbra-Moose has troubles if Eclipse is already running. So I restart the image and try again without using the PenumbraConsole. I get a debugger as it tries to import an Enum, so I hack your code to only consider interfaces and classes.
The importer is indeed far from complete. We're mostly working on the ability for Soul to reason about eclipse trees.
---------------------------- Johan Brichau johan.brichau@uclouvain.be
I want to see that :) But this is also fun to get a small importer in VW.
On 18 déc. 07, at 13:50, Johan Brichau wrote:
Hi guys,
There still is another solution :-)
I know it's still a bit problematic to get Penumbra / JavaConnect running on different machines than mine, but we're using the Eclipse parser from Smalltalk and you get all that for free. I've been loading jEdit into MOOSE using exactly this technique. I'm happy to help you to get it working too. The problems are often located in different filesystem locations and classpaths, which I'm often able to solve when I see them.
Anyway, Toon and Tudor have been a great help last friday trying it out and hitting some problems, mostly related to the order of installing. I'm trying to get those out too, but if you're interested, I can help you set it up via iChat or phone.
ichat: AIM johanbrichau
cheers, Johan
On 18 Dec 2007, at 13:15, Bergel, Alexandre wrote:
Form the UI point of view, your solution is exactly what I want. Because of the used generics it does not parse my files thought.
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
I have not idea how to interpret the following errors:
Shift/Reduce Conflict
[identifier : . <IDENTIFIER>;"<" "." "["] ***** [Optional: type_arguments : . ;<IDENTIFIER>]
Shift/Reduce Conflict
[dot : . ".";"<" "new" <IDENTIFIER> "super" "this"] ***** [Repeat: dim : . ;"[" "."]
Alexandre
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Johan Brichau johan.brichau@uclouvain.be
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
Alex, I published the package Grammar-Java-1.5. I mostly copied and pasted the grammer found here into SmaCC:
http://people.csail.mit.edu/jhbrown/javagrammar/index.html
There are two Shift/Reduce conflicts, but the parser successfully parses all the included tests.
Lukas
John Brant advised me to use SableCC, but this is a mess...
Thanks Lukas, Alexandre
On 18 Dec 2007, at 10:23, Lukas Renggli wrote:
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
Alex, I published the package Grammar-Java-1.5. I mostly copied and pasted the grammer found here into SmaCC:
http://people.csail.mit.edu/jhbrown/javagrammar/index.html
There are two Shift/Reduce conflicts, but the parser successfully parses all the included tests.
Lukas
-- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Good job Lukas, It works fine.
You should send it to John and Don. They are not aware of such grammar.
Alexandre
On 18 Dec 2007, at 10:23, Lukas Renggli wrote:
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
Alex, I published the package Grammar-Java-1.5. I mostly copied and pasted the grammer found here into SmaCC:
http://people.csail.mit.edu/jhbrown/javagrammar/index.html
There are two Shift/Reduce conflicts, but the parser successfully parses all the included tests.
Lukas
-- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Alex can you send it to marcus so that it is added to Smacc in Squeak?
Stef On 18 déc. 07, at 15:37, Bergel, Alexandre wrote:
Good job Lukas, It works fine.
You should send it to John and Don. They are not aware of such grammar.
Alexandre
On 18 Dec 2007, at 10:23, Lukas Renggli wrote:
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
Alex, I published the package Grammar-Java-1.5. I mostly copied and pasted the grammer found here into SmaCC:
http://people.csail.mit.edu/jhbrown/javagrammar/index.html
There are two Shift/Reduce conflicts, but the parser successfully parses all the included tests.
Lukas
-- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
lukas is actually the author. Lukas, I think you should send your grammar to Marcus and John Brant :-)
Alexandre
On 19 Dec 2007, at 10:10, Stéphane Ducasse wrote:
Alex can you send it to marcus so that it is added to Smacc in Squeak?
Stef On 18 déc. 07, at 15:37, Bergel, Alexandre wrote:
Good job Lukas, It works fine.
You should send it to John and Don. They are not aware of such grammar.
Alexandre
On 18 Dec 2007, at 10:23, Lukas Renggli wrote:
Yep, but I haven't found a Java 5 grammar for SmaCC (John and Don are not aware of such grammar as well). I spend a good part of my night in trying to port a grammar for SmaCC. But I got many Shift/Reduce, that I do not know how to solve.
Alex, I published the package Grammar-Java-1.5. I mostly copied and pasted the grammer found here into SmaCC:
http://people.csail.mit.edu/jhbrown/javagrammar/index.html
There are two Shift/Reduce conflicts, but the parser successfully parses all the included tests.
Lukas
-- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
lukas is actually the author. Lukas, I think you should send your grammar to Marcus and John Brant :-)
Well, I just took an existing LALR grammer of Java 1.5 and manually transformed it so that it can be compiled with SmaCC.
I am the author of the current port of SmaCC to Squeak. The current port features parser optimizations that were not available in older versions. It also passes all the tests and compiles the example grammers identically to the ones in VisualWorks. The original port from VisualWorks was by Marcus Gaelli, as far as I know. So I should probably send the Java 1.5 grammer to myself?
The question is rather, if we really want to include the Java 1.5 grammer? It is huge (literally!) and not part of the original package.
Lukas
Please include may be as a separate package this would be bad to lose this parser.
stef
On 19 déc. 07, at 15:14, Lukas Renggli wrote:
lukas is actually the author. Lukas, I think you should send your grammar to Marcus and John Brant :-)
Well, I just took an existing LALR grammer of Java 1.5 and manually transformed it so that it can be compiled with SmaCC.
I am the author of the current port of SmaCC to Squeak. The current port features parser optimizations that were not available in older versions. It also passes all the tests and compiles the example grammers identically to the ones in VisualWorks. The original port from VisualWorks was by Marcus Gaelli, as far as I know. So I should probably send the Java 1.5 grammer to myself?
The question is rather, if we really want to include the Java 1.5 grammer? It is huge (literally!) and not part of the original package.
Lukas
-- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Hi Lukas
What version of Eclipse and Java do you use (for j2mse)? It is propably an issue, if you don't use Java 1.6.
Chers Sandro
Lukas Renggli schrieb:
I tried to import Java sources into MOOSE, but failed with both ways documented on moose.unibe.ch:
- The Eclipse Plugin (http://moose.unibe.ch/tools/j2mse) adds a
menu-item to the Project tree, but no matter from where (Project, Package, Class) I try to activate the plugin it says "The chosen operation is not currently available".
crashes with a NullPointerException after I select the source folder to import.
How do you import Java sources into Moose? My Software Engineering students would like to play with their code in MOOSE.
Lukas
And Sandro also moved from Windows dev to Linux dev since there is a bug in writestreams in Java 1.6 for windows. Correct me if I'm wrong.
cheers, Toon
Sandro De Zanet wrote:
Hi Lukas
What version of Eclipse and Java do you use (for j2mse)? It is propably an issue, if you don't use Java 1.6.
Chers Sandro
Lukas Renggli schrieb:
I tried to import Java sources into MOOSE, but failed with both ways documented on moose.unibe.ch:
- The Eclipse Plugin (http://moose.unibe.ch/tools/j2mse) adds a
menu-item to the Project tree, but no matter from where (Project, Package, Class) I try to activate the plugin it says "The chosen operation is not currently available".
crashes with a NullPointerException after I select the source folder to import.
How do you import Java sources into Moose? My Software Engineering students would like to play with their code in MOOSE.
Lukas
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
That's true. But I don't think the error is due to the Filewriter issue. If you work on a Windows you have to correct the file afterwards though (first line).
Cheers Sandro
Toon Verwaest schrieb:
And Sandro also moved from Windows dev to Linux dev since there is a bug in writestreams in Java 1.6 for windows. Correct me if I'm wrong.
cheers, Toon
Sandro De Zanet wrote:
Hi Lukas
What version of Eclipse and Java do you use (for j2mse)? It is propably an issue, if you don't use Java 1.6.
Chers Sandro
Lukas Renggli schrieb:
I tried to import Java sources into MOOSE, but failed with both ways documented on moose.unibe.ch:
- The Eclipse Plugin (http://moose.unibe.ch/tools/j2mse) adds a
menu-item to the Project tree, but no matter from where (Project, Package, Class) I try to activate the plugin it says "The chosen operation is not currently available".
crashes with a NullPointerException after I select the source folder to import.
How do you import Java sources into Moose? My Software Engineering students would like to play with their code in MOOSE.
Lukas
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
That's silly, please fix that ASAP! In my code I have no problems writing MSE files under windows.
BufferedWriter output = new BufferedWriter(new OutputStreamWriter( new FileOutputStream(new File("file.mse")))); ParseClient client = new MSEPrinter(output); m2.accept(client); output.flush(); output.close();
works fine, AA
On 17 Dec 2007, at 17:28 , Toon Verwaest wrote:
And Sandro also moved from Windows dev to Linux dev since there is a bug in writestreams in Java 1.6 for windows. Correct me if I'm wrong.
cheers, Toon
You should have a look at Sandros code maybe. I am not as used to Java as you I guess; but I didn't see anything wrong with his code. And especially not linked to the very weird behaviour he got. And the fact that exactly the same code -does- work under linux doesn't make me doubt that it's a java problem. But well... I might be wrong of course.
On (17/12/07 18:45), Adrian Kuhn wrote:
From: Adrian Kuhn akuhn@gmx.ch To: Related to the development of Moose and other related tools moose-dev@iam.unibe.ch Subject: [Moose-dev] Re: Java Import Date: Mon, 17 Dec 2007 18:45:09 +0100
That's silly, please fix that ASAP! In my code I have no problems writing MSE files under windows.
BufferedWriter output = new BufferedWriter(new OutputStreamWriter( new FileOutputStream(new File("file.mse")))); ParseClient client = new MSEPrinter(output); m2.accept(client); output.flush(); output.close();
works fine, AA
On 17 Dec 2007, at 17:28 , Toon Verwaest wrote:
And Sandro also moved from Windows dev to Linux dev since there is a bug in writestreams in Java 1.6 for windows. Correct me if I'm wrong.
cheers, Toon
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Sandro, please try this code
File file = new File("file.mse"); BufferedWriter output = new BufferedWriter(new OutputStreamWriter( new FileOutputStream(file), "UTF-8")); ParseClient client = new MSEPrinter(output); m2.accept(client); output.flush(); output.close();
AA
On 17 Dec 2007, at 18:53 , Toon Verwaest wrote:
You should have a look at Sandros code maybe. I am not as used to Java as you I guess; but I didn't see anything wrong with his code. And especially not linked to the very weird behaviour he got. And the fact that exactly the same code -does- work under linux doesn't make me doubt that it's a java problem. But well... I might be wrong of course.
On (17/12/07 18:45), Adrian Kuhn wrote:
From: Adrian Kuhn akuhn@gmx.ch To: Related to the development of Moose and other related tools moose-dev@iam.unibe.ch Subject: [Moose-dev] Re: Java Import Date: Mon, 17 Dec 2007 18:45:09 +0100
That's silly, please fix that ASAP! In my code I have no problems writing MSE files under windows.
BufferedWriter output = new BufferedWriter(new OutputStreamWriter( new FileOutputStream(new File("file.mse")))); ParseClient client = new MSEPrinter(output); m2.accept(client); output.flush(); output.close();
works fine, AA
On 17 Dec 2007, at 17:28 , Toon Verwaest wrote:
And Sandro also moved from Windows dev to Linux dev since there is a bug in writestreams in Java 1.6 for windows. Correct me if I'm wrong.
cheers, Toon
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Sandro, can you add a version check to your plugin? to fail gracefully with a nice dialog stating the missing requierments, ie wrong version x y please update to x y etc pp
AA
On 17 Dec 2007, at 16:45 , Sandro De Zanet wrote:
Hi Lukas
What version of Eclipse and Java do you use (for j2mse)? It is propably an issue, if you don't use Java 1.6.
Chers Sandro
can you add a version check to your plugin? to fail gracefully with a nice dialog stating the missing requierments, ie wrong version x y please update to x y etc pp
I also had to install the WTP-Plugin and downgrade my EMOF installation to make j2mse just appear in the project menu. I wonder why there are these strange dependencies?
Lukas
What version of Eclipse and Java do you use (for j2mse)? It is propably an issue, if you don't use Java 1.6.
I use Eclipse 3.3.1.1, with Java 1.5 on OS X. As far as I know there is no support for Java 1.6 on OS X yet.
Cheers, Lukas
Hi Lukas,
Thanks for the report.
I presume that you used it on the code of the ESE projects. I encountered some similar problems with those projects when I tried to do the demo for ESE last week.
I already pinged the iPlasma people, but could you also pass me the code that you tried so that I can forward it as test bed?
Cheers, Doru
On Dec 17, 2007, at 3:48 PM, Lukas Renggli wrote:
crashes with a NullPointerException after I select the source folder to import.
How do you import Java sources into Moose? My Software Engineering students would like to play with their code in MOOSE.
-- www.tudorgirba.com www.tudorgirba.com/blog
"What we can governs what we wish."
I already pinged the iPlasma people, but could you also pass me the code that you tried so that I can forward it as test bed?
You can try any of the ESE projects, none of them works.
svn co http://ese.unibe.ch/svn/eseX/trunk/src [X=1..4]
When trying to import I get errors like:
- Exception in thread "Thread-5" java.lang.Error: Unknown primitive type int - java.lang.NullPointerException
Cheers, Lukas
Thanks Lukas. I will forward them.
Doru
On Dec 18, 2007, at 1:22 PM, Lukas Renggli wrote:
I already pinged the iPlasma people, but could you also pass me the code that you tried so that I can forward it as test bed?
You can try any of the ESE projects, none of them works.
svn co http://ese.unibe.ch/svn/eseX/trunk/src [X=1..4]
When trying to import I get errors like:
- Exception in thread "Thread-5" java.lang.Error: Unknown primitive
type int
- java.lang.NullPointerException
Cheers, Lukas
-- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com www.tudorgirba.com/blog
"In a world where everything is moving ever faster, one might have better chances to win by moving slower."