I think it would be worth investigating implementing the parser and the AST in PetitParser. On the one hand, this is expensive in the short term, but it can be interesting in the long term.

Cheers,
Doru



On Sat, Dec 6, 2014 at 11:21 AM, Alexandre Bergel <alexandre.bergel@me.com> wrote:
Hi Nelson,

I do not quite understand.
What is your plan? I believe the best way to analyze Ruby within Moose is to go through the .mse file. You need to produce a .mse that describe the structure of your Ruby system.

Cheers,
Alexandre


> On Dec 5, 2014, at 11:47 PM, Nelson Garcia <nelsongarcia.info@gmail.com> wrote:
>
> Hi, all
>
> I have a little ruby_test.rb file whit this content.
>
>
> =begin
> hey this
> is a
> block comment.
> =end
>
> # Ruby knows what you
> # mean, even if you
> # want to do math on
> # an entire Array
> cities  = %w[ London
>               Oslo
>               Paris
>               Amsterdam
>               Berlin ]
> visited = %w[Berlin Oslo]
>
> puts "Hey #{cities.first}"
>
> puts "I still need " +
>      "to visit the " +
>      "following cities:",
>      cities - visited
>
>
> the output is:
>
> nelson@LinuxDev:~/projects/smalltalk/pharo3.0/shared$ ruby ruby_test.rb
> Hey London
> I still need to visit the following cities:
> London
> Paris
> Amsterdam
>
> -------------------
>
> in Pharo:
> result := RubyGrammar parseFile:'ruby_test.rb'.
>
> the output is:
>
> '%w[ London Oslo Paris  Amsterdam  Berlin ]'
> '%w[Berlin Oslo]'
> '""Hey #{cities.first}""'
> '""I still need ""'
> '""to visit the ""'
> '""following cities:""'
>
> but the last instruction doesn't appear "cities - visited"
>
>
>
>
>
> 2014-12-02 9:56 GMT-04:00 Juraj Kubelka <juraj.kubelka@gmail.com>:
> Great! Let us know about your progress and thoughts :-)
>
> Juraj
>
>> On Dec 2, 2014, at 10:55 AM, Nelson Garcia <nelsongarcia.info@gmail.com> wrote:
>>
>> thanks Juraj, now I can explore the code.
>>
>> On 12/02/2014 06:09 AM, Juraj Kubelka wrote:
>>> Hi Nelson,
>>>
>>> check this page: http://smalltalkhub.com/#!/~radi/RubyParser
>>>
>>> There is:
>>> <Mail Attachment.png>
>>> This code you can copy and in Pharo, you can use Monticello tool which have a button “+Repository”, here you chose smalltalkhub from the menu and paste the code from the page.
>>>
>>> I think there is a chapter in the book about Monticello. Here you can find more details.
>>>
>>> Cheers,
>>> Juraj
>>>
>>>
>>>> On Dec 1, 2014, at 11:47 PM, Nelson Garcia <nelsongarcia.info@gmail.com> wrote:
>>>>
>>>> Hi, all
>>>>
>>>> How can I check the code of this repository http://smalltalkhub.com/mc/radi/RubyParser/main?
>>>>
>>>> do I need some permission?
>>>>
>>>> On 12/01/2014 02:27 PM, Juraj Kubelka wrote:
>>>>> Sí, no dudas de preguntar!
>>>>>
>>>>> Que estás bien,
>>>>> Juraj
>>>>>
>>>>>> On Dec 1, 2014, at 12:50 PM, Alexandre Bergel <alexandre.bergel@me.com> wrote:
>>>>>>
>>>>>> Cualquier duda, pregunta!
>>>>>>
>>>>>> Alexandre
>>>>>> --
>>>>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>>>>> Alexandre Bergel  http://www.bergel.eu
>>>>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>>>>
>>>>>>
>>>>>>
>>>>>>> On Dec 1, 2014, at 12:19 PM, Nelson Garcia <nelsongarcia.info@gmail.com> wrote:
>>>>>>>
>>>>>>> Hola Alexandre,
>>>>>>>
>>>>>>> gracias por incluirme en este proyecto. continuare leyendo el libro de moose y probaré el código de Jan Kurs y Oscar.
>>>>>>>
>>>>>>>
>>>>>>> On 12/01/2014 10:25 AM, Alexandre Bergel wrote:
>>>>>>>> Hola Nelson,
>>>>>>>>
>>>>>>>> Jan Kurs and Oscar son de Suiza, en una buena unversidad. Es importante que colaboras con ellos. La cosa que puedes hacer por ahora, es probar el código que ellos han hecho.
>>>>>>>>
>>>>>>>> Avisanos como va. Es importante
>>>>>>>>
>>>>>>>> Saludos,
>>>>>>>> Alexandre
>>>>>>>>
>>>>>>>> --
>>>>>>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>>>>>>> Alexandre Bergel  http://www.bergel.eu
>>>>>>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>> Begin forwarded message:
>>>>>>>>>
>>>>>>>>> Date: December 1, 2014 at 10:35:01 AM GMT-3
>>>>>>>>> From: Jan Kurš <kurs@iam.unibe.ch>
>>>>>>>>> To: Jan Kurš <kurs@iam.unibe.ch>
>>>>>>>>> Cc: Moose-related development <moose-dev@iam.unibe.ch>, Nelson Garcia <nelsongarcia.info@gmail.com>, Rathesan Iyadurai <rathesan@students.unibe.ch>
>>>>>>>>> Subject: [Moose-dev] Re: Analyzing Ruby
>>>>>>>>> Reply-To: Moose-related development <moose-dev@iam.unibe.ch>
>>>>>>>>>
>>>>>>>>> Hey All,
>>>>>>>>>
>>>>>>>>> Indeed, we have a student working on extracting class names and method names from Ruby code using PetitParser. So far, you can find the project here:
>>>>>>>>>
>>>>>>>>> http://smalltalkhub.com/#!/~radi/RubyParser
>>>>>>>>>
>>>>>>>>> Do you plan to use PetitParser, hand written parser or some other framework?
>>>>>>>>>
>>>>>>>>> Cheers,
>>>>>>>>> Jan
>>>>>>>>>
>>>>>>>>> On 1 December 2014 at 14:29, Jan Kurš <kurs@iam.unibe.ch> wrote:
>>>>>>>>> Hey All,
>>>>>>>>>
>>>>>>>>> Indeed, we have a student working on extracting class names and method names from a ruby code. So far, you can find the project here:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 1 December 2014 at 10:12, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>> Hi Folks,
>>>>>>>>>
>>>>>>>>> Please talk to Jan Kurs (in CC).  We have a student now exploring how to use island grammars to define an exporter.  Our goal is not to produce a finished product, but to evaluate our island parser tech, but still it may be useful to sync.
>>>>>>>>>
>>>>>>>>> Cheers,
>>>>>>>>> Oscar
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> > On 30 Nov 2014, at 14:09 , Tudor Girba <tudor@tudorgirba.com> wrote:
>>>>>>>>> >
>>>>>>>>> > Hi Nelson,
>>>>>>>>> >
>>>>>>>>> > Welcome!
>>>>>>>>> >
>>>>>>>>> > Thanks for taking this project up. Indeed, this would be a very valuable addition to the Moose ecosystem. Please ask questions and we will support you.
>>>>>>>>> >
>>>>>>>>> > Cheers,
>>>>>>>>> > Doru
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>> > On Sun, Nov 30, 2014 at 2:06 PM, Alexandre Bergel <alexandre.bergel@me.com> wrote:
>>>>>>>>> > Hi!
>>>>>>>>> >
>>>>>>>>> > Nelson is an excellent student from Bolivia. We met Nelson at the summer school (sponsored by ESUG) that we organized.
>>>>>>>>> > Nelson would like to write an MSE exporter for Ruby. Analyzing Ruby applications in Moose is indeed important.
>>>>>>>>> >
>>>>>>>>> > Nelson, as a starting point how how to produce MSE file, you can have a look at
>>>>>>>>> >         - http://www.themoosebook.org/book  http://www.themoosebook.org/book/externals/import-export/mse
>>>>>>>>> >         - Try out with .mse file example. You can easily generate one by importing Pharo code in Moose (http://www.themoosebook.org/book/externals/import-export/smalltalk) and export it by right clicking on a model
>>>>>>>>> >
>>>>>>>>> > Ask for help in the mailing list. People are waiting for your tool :-)
>>>>>>>>> >
>>>>>>>>> > Cheers,
>>>>>>>>> > 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
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>> > --
>>>>>>>>> > www.tudorgirba.com
>>>>>>>>> >
>>>>>>>>> > "Every thing has its own flow"
>>>>>>>>> > _______________________________________________
>>>>>>>>> > 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
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
>

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




_______________________________________________
Moose-dev mailing list
Moose-dev@iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev



--
www.tudorgirba.com

"Every thing has its own flow"