The CAnalyzer entry on Squeak Source says to install it like this: ScriptLoader new installer ss project: 'CAnalyzer'; install: 'CAnalyzerLoader'. ScriptLoader perform: #loadCAnalyzer.
But that blows up for want of what looks like parts of MOOSE. I have the new beta at least attempting to install MOOSE; so far, it ended in a frozen image, but I'm retrying it. Is there a better way to load CAnalyzer? Bill ________________________________________ From: [email protected] [[email protected]] On Behalf Of Schwab,Wilhelm K [[email protected]] Sent: Saturday, September 26, 2009 9:42 AM To: [email protected] Subject: Re: [Pharo-project] CAnalyer Sig, Interesting. I looked at swig and decided that I would have a better chance of success with pattern matching, especially since some of the "code" I want to analyze is barely pseudo code (but still full of valuable information). I ended up with a bit of a mess in Dolphin, but it strangely manages to work; for Pharo, I planned to clean it up, got as far as noticing the regex package, and saw CAnalyzer. That is a long way around saying that I am not eager to tear back into swig, but your argument about the working preprocessor and parser is well taken and I would like to see what you did. I should at least look at CAnalyzer and then either switch to it or begin moving my unit tests and higher-level recognizers to Pharo. Leaving the whole thing in Dolphin is an option too, but the code really needs some cleaning, so the port would do it and me some good. I will be glad to look over your work and maybe put swig back into consideration. Bill -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Igor Stasenko Sent: Saturday, September 26, 2009 12:53 AM To: [email protected] Subject: Re: [Pharo-project] CAnalyer 2009/9/26 Schwab,Wilhelm K <[email protected]>: > Sig, > > Is it something you have made available? One snag in my world is that the > "code" is not always something that can be compiled. However, for GSL and > other libraries of interest, the code is valid, if not full of macro-based > annoyances and other distractions. > the code i written is the module to SWIG. The project what i developed once is to write a smalltalk interpreter by own, and the aim was to use it as a scripting engine for C++ projects. My experiments stopped shortly after i understood that my interpreter implementation having some flaws and i need to spend much time to rewrite everything :) But, along the way, i started making bindings to Ogre 3D engine (http://www.ogre3d.org/) and my SWIG-based binding code generator were able to reflect C++ classes in my own smalltalk, including being able to call constructors/destructors, methods and directly access the fields by using auto-generated primives. If you wanna to get deeper into that, i can send you the sources and examples. With a little effort, the code generation could be easily changed to satisfy the FFI/Alien demands, then you will be able to bind any C library with Squeak VM. > Bill > > > -----Original Message----- > From: [email protected] > [mailto:[email protected]] On Behalf Of Igor > Stasenko > Sent: Friday, September 25, 2009 11:03 PM > To: [email protected] > Subject: Re: [Pharo-project] CAnalyer > > 2009/9/26 Schwab,Wilhelm K <[email protected]>: >> I was digging around on Squeak Source for OSProcess and friends, and ran >> across CAnalyzer. Are there any papers on it? How robust is it? What does >> it extract from C code? For example, might one put the GSL >> (www.gnu.org/software/gsl) header files into it, pull out all of the >> structure definitions and function prototypes, and generate LOTS of FFI code >> to make a wrapper? Just a thought... >> > > I having a modified version of SWIG, which can parse C++ files, including > classes and nested classes, to produce smalltalk code wrappers. > > Reproducing the SWIG in smalltalk would be very time consuming. > But it would be cool to have a C/C++ parser implementation. > > SWIG is not only parsing, its also doing macro preprocessing, so its > can't be fooled with macros :) > >> Bill >> >> >> _______________________________________________ >> Pharo-project mailing list >> [email protected] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >> > > > > -- > Best regards, > Igor Stasenko AKA sig. > > _______________________________________________ > Pharo-project mailing list > [email protected] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > _______________________________________________ > Pharo-project mailing list > [email protected] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > -- Best regards, Igor Stasenko AKA sig. _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
