Refactoring tools

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

Refactoring tools

laurent laffont
Hi,

is there actually a way to use Pharo refactoring tools (at least rename class, move method) for Amber code ? Or maybe there's a port in Amber IDE ?

Cheers,

Laurent
Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

gokr
On 11/12/2012 10:28 AM, laurent laffont wrote:
> Hi,
>
> is there actually a way to use Pharo refactoring tools (at least rename
> class, move method) for Amber code ?

I doubt it. Kaliningrad doesn't store Amber code as "proper code" in a
Pharo image - but as fat string literals.

> Or maybe there's a port in Amber IDE ?

Nope. Not that I know of, and I would guess a HUGE undertaking as Amber
is a bit different on meta side of things.

But don't trust me on this, Nicolas can probably give better answer
given his new work which I haven't looked much at yet.

regards, Göran
Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

sebastianconcept
In reply to this post by laurent laffont
Hey Laurent,

we should think in doing this kind of thing at the Amber side.

Actually sounds like a future feature for Helios

BTW you can contribute if you want to


On Nov 12, 2012, at 7:28 AM, laurent laffont wrote:

Hi,

is there actually a way to use Pharo refactoring tools (at least rename class, move method) for Amber code ? Or maybe there's a port in Amber IDE ?

Cheers,

Laurent

Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

Nicolas Petton
In reply to this post by gokr

Hi!

It is planned to port the refactoring enine to Amber, but we're not
there yet :)

Nico

Göran Krampe <[hidden email]> writes:

> On 11/12/2012 10:28 AM, laurent laffont wrote:
>> Hi,
>>
>> is there actually a way to use Pharo refactoring tools (at least rename
>> class, move method) for Amber code ?
>
> I doubt it. Kaliningrad doesn't store Amber code as "proper code" in a
> Pharo image - but as fat string literals.
>
>> Or maybe there's a port in Amber IDE ?
>
> Nope. Not that I know of, and I would guess a HUGE undertaking as Amber
> is a bit different on meta side of things.
>
> But don't trust me on this, Nicolas can probably give better answer
> given his new work which I haven't looked much at yet.
>
> regards, Göran

--
Nicolas Petton
http://nicolas-petton.fr
Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

Guido Stepken

Hi!

I don't see any real sense in copying code to amber ... Why can't Pharo be amber's SDK?

regards, Guido Stepken

Am 12.11.2012 15:52 schrieb "Nicolas Petton" <[hidden email]>:

Hi!

It is planned to port the refactoring enine to Amber, but we're not
there yet :)

Nico

Göran Krampe <[hidden email]> writes:

> On 11/12/2012 10:28 AM, laurent laffont wrote:
>> Hi,
>>
>> is there actually a way to use Pharo refactoring tools (at least rename
>> class, move method) for Amber code ?
>
> I doubt it. Kaliningrad doesn't store Amber code as "proper code" in a
> Pharo image - but as fat string literals.
>
>> Or maybe there's a port in Amber IDE ?
>
> Nope. Not that I know of, and I would guess a HUGE undertaking as Amber
> is a bit different on meta side of things.
>
> But don't trust me on this, Nicolas can probably give better answer
> given his new work which I haven't looked much at yet.
>
> regards, Göran

--
Nicolas Petton
http://nicolas-petton.fr
Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

Herby Vojčík


Guido Stepken wrote:
> Hi!
>
> I don't see any real sense in copying code to amber ... Why can't Pharo
> be amber's SDK?

I agree. In the sense Janko Mivšek probably envisioned it a few weeks
ago on twitter, too: develop in Pharo, run in Amber.

But, incompatible kernel classes probably make this very hard goal...
maybe if Amber could have (self-contained) subset of Pharo, classes
could have <restring: amber> or something in the definition, so that
they don't use (read: get warnings when attempt to use) classes outside
the subset.

Herby

> regards, Guido Stepken
>
> Am 12.11.2012 15:52 schrieb "Nicolas Petton" <[hidden email]
> <mailto:[hidden email]>>:
>
>
>     Hi!
>
>     It is planned to port the refactoring enine to Amber, but we're not
>     there yet :)
>
>     Nico
>
>     Göran Krampe <[hidden email]
>     <mailto:[hidden email]>> writes:
>
>      > On 11/12/2012 10:28 AM, laurent laffont wrote:
>      >> Hi,
>      >>
>      >> is there actually a way to use Pharo refactoring tools (at least
>     rename
>      >> class, move method) for Amber code ?
>      >
>      > I doubt it. Kaliningrad doesn't store Amber code as "proper code"
>     in a
>      > Pharo image - but as fat string literals.
>      >
>      >> Or maybe there's a port in Amber IDE ?
>      >
>      > Nope. Not that I know of, and I would guess a HUGE undertaking as
>     Amber
>      > is a bit different on meta side of things.
>      >
>      > But don't trust me on this, Nicolas can probably give better answer
>      > given his new work which I haven't looked much at yet.
>      >
>      > regards, Göran
>
>     --
>     Nicolas Petton
>     http://nicolas-petton.fr
>
Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

sebastianconcept
In reply to this post by Guido Stepken
Why can't Pharo be amber's SDK?

Great question.

A strong reason I can think of is to keep Amber de-coupled from particular server-side counterparts.

if you do not have it coupled with a specific server, you could put in the server:

1. ruby
2. Pharo smalltalk (I'm using this for a couple of apps and it's great!)
3. cincom smalltalk
4. gemstonw
5. nodejs 
6. nodejs + some amber framework
7. other stacks? (erlang, python, etc) 

anything.

But if you couple it to a particular smalltalk, you'll make it way more closed/niche/unknown than necessary

makes sense?


On Nov 12, 2012, at 12:56 PM, Guido Stepken wrote:

Hi!

I don't see any real sense in copying code to amber ... Why can't Pharo be amber's SDK?

regards, Guido Stepken

Am 12.11.2012 15:52 schrieb "Nicolas Petton" <[hidden email]>:

Hi!

It is planned to port the refactoring enine to Amber, but we're not
there yet :)

Nico

Göran Krampe <[hidden email]> writes:

> On 11/12/2012 10:28 AM, laurent laffont wrote:
>> Hi,
>>
>> is there actually a way to use Pharo refactoring tools (at least rename
>> class, move method) for Amber code ?
>
> I doubt it. Kaliningrad doesn't store Amber code as "proper code" in a
> Pharo image - but as fat string literals.
>
>> Or maybe there's a port in Amber IDE ?
>
> Nope. Not that I know of, and I would guess a HUGE undertaking as Amber
> is a bit different on meta side of things.
>
> But don't trust me on this, Nicolas can probably give better answer
> given his new work which I haven't looked much at yet.
>
> regards, Göran

--
Nicolas Petton
http://nicolas-petton.fr

Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

Herby Vojčík


sebastian wrote:
> Why can't Pharo be amber's SDK?
>
> Great question.
>
> A strong reason I can think of is to keep Amber de-coupled from
> particular server-side counterparts.

But that seems like misunderstanding. At least I saw it without any
_server-side_ counterparts coupling.
Just use Pharo as development environment which can work with amber code.

All of the below then can be used (dev Pharo being the client, the tech
from below as the server).

> if you *do not* have it coupled with a specific server, you could put in
> the server:
>
> 1. ruby
> 2. Pharo smalltalk (I'm using this for a couple of apps and it's great!)
> 3. cincom smalltalk
> 4. gemstonw
> 5. nodejs
> 6. nodejs + some amber framework
> 7. other stacks? (erlang, python, etc)
>
> anything.
>
> But if you couple it to a particular smalltalk, you'll make it way more
> closed/niche/unknown than necessary
>
> makes sense?
>
> sebastian <https://about.me/sebastianconcept>

Herby
Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

laurent laffont
On Mon, Nov 12, 2012 at 4:39 PM, Herby Vojčík <[hidden email]> wrote:


sebastian wrote:
Why can't Pharo be amber's SDK?

Great question.

A strong reason I can think of is to keep Amber de-coupled from
particular server-side counterparts.

But that seems like misunderstanding. At least I saw it without any _server-side_ counterparts coupling.
Just use Pharo as development environment which can work with amber code.


I suppose ideally there would be a compatibility layer between Pharo & Amber so we could load refactoring-tools on Amber, no copy-paste, ... maybe I'm dreaming too much.

I don't see how we can develop in Pharo & debug interactive widgets in the web browser.

Or maybe some remote tools would allow to interact with the web browser / Amber from Pharo....

Laurent




 

All of the below then can be used (dev Pharo being the client, the tech from below as the server).

if you *do not* have it coupled with a specific server, you could put in

the server:

1. ruby
2. Pharo smalltalk (I'm using this for a couple of apps and it's great!)
3. cincom smalltalk
4. gemstonw
5. nodejs
6. nodejs + some amber framework
7. other stacks? (erlang, python, etc)

anything.

But if you couple it to a particular smalltalk, you'll make it way more
closed/niche/unknown than necessary

makes sense?

sebastian <https://about.me/sebastianconcept>

Herby

Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

SebastianHC
In reply to this post by Herby Vojčík
I would love to have access to the VASmalltalk tools and ENVY code
repository, but there's one little thing that might stop any attempt to
bring Amber development to any kind of Smalltalk environment.

How do you handle saving non existing classes? Amber can do that!

Big hacks in the compilers will be needed and  what is the sense of
Amber, if you can't see you changes within the browser? That's exaclty
the power of Amber. Debug javascript in runtime.

But,... really handy might indeed be an environment were one can host
Amber from a Smalltalk server and add Seaside or Aida components into
play, without having to host two servers.

A WASeasideAmberAdaptor so to speak.

Sebastian

Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

Janko Mivšek-2
In reply to this post by Herby Vojčík
On Nov 12, 4:07 pm, Herby Vojčík <[hidden email]> wrote:
> Guido Stepken wrote:

> > I don't see any real sense in copying code to amber ... Why can't Pharo
> > be amber's SDK?

> I agree. In the sense Janko Mivšek probably envisioned it a few weeks
> ago on twitter, too: develop in Pharo, run in Amber.

Me and Nico brainstormed on IRC a possibility to mix Pharo and Amber
Smalltalk in the same methods, or to have one method in normal Pharo
Smalltalk, another in Amber. Both in Pharo development environment. To
develop on Pharo in the sense of Pharo tools and run in Amber being in
browsers or on the server.

One interim possibility would be to develop not only on Pharo as 'SDK'
but also in Pharo Smalltalk, then compile to Amber Smalltalk and send
to the browser. Something similar I'm thinking for a while for Aida -
to 'emit' Amber code from otherwise regular Aida code, written in
classical Smalltalk.

> But, incompatible kernel classes probably make this very hard goal...
> maybe if Amber could have (self-contained) subset of Pharo, classes
> could have <restring: amber> or something in the definition, so that
> they don't use (read: get warnings when attempt to use) classes outside
> the subset.

This is probably the biggest obstacle, yes. But I still think it is a
way worth to go. Maybe by modifying Amber to be more classic Smalltalk
friendly even more?

Best regards
Janko


>
> Herby
>
> > regards, Guido Stepken
>
> > Am 12.11.2012 15:52 schrieb "Nicolas Petton" <[hidden email]
> > <mailto:[hidden email]>>:
>
> >     Hi!
>
> >     It is planned to port the refactoring enine to Amber, but we're not
> >     there yet :)
>
> >     Nico
>
> >     Göran Krampe <[hidden email]
> >     <mailto:[hidden email]>> writes:
>
> >      > On 11/12/2012 10:28 AM, laurent laffont wrote:
> >      >> Hi,
>
> >      >> is there actually a way to use Pharo refactoring tools (at least
> >     rename
> >      >> class, move method) for Amber code ?
>
> >      > I doubt it. Kaliningrad doesn't store Amber code as "proper code"
> >     in a
> >      > Pharo image - but as fat string literals.
>
> >      >> Or maybe there's a port in Amber IDE ?
>
> >      > Nope. Not that I know of, and I would guess a HUGE undertaking as
> >     Amber
> >      > is a bit different on meta side of things.
>
> >      > But don't trust me on this, Nicolas can probably give better answer
> >      > given his new work which I haven't looked much at yet.
>
> >      > regards, Göran
>
> >     --
> >     Nicolas Petton
> >    http://nicolas-petton.fr
Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

Nicolas Petton
In reply to this post by Guido Stepken

There's a project I started with Benjamin during ESUG that takes this
approach. It's using Pharo's Nautilus and communicates live with Amber
through websocket to enable browsing Amber from a Pharo environment.

Currently browsing is working as well as compiling from Pharo
IIRC. There's also a very basic workspace. The next step would be to
enable inspecting of Amber object (we could then inspect live JavaScript
objects remotely for free from Pharo... miam!). Using the refactoring
engine of Pharo could also be possible, etc, etc.

I don't have enough time to keep working on it right now (maybe Ben is
willing to put some effort into it, I don't know), but if someone wants
to give the project some love, I could show what's working and how.

Cheers, Nico

Guido Stepken <[hidden email]> writes:

> Hi!
>
> I don't see any real sense in copying code to amber ... Why can't
> Pharo be amber's SDK?
>
> regards, Guido Stepken Am 12.11.2012 15:52 schrieb "Nicolas Petton"
> <[hidden email]>:
>
>>
>> Hi!
>>
>> It is planned to port the refactoring enine to Amber, but we're not
>> there yet :)
>>
>> Nico
>>
>> Göran Krampe <[hidden email]> writes:
>>
>> > On 11/12/2012 10:28 AM, laurent laffont wrote:
>> >> Hi,
>> >>
>> >> is there actually a way to use Pharo refactoring tools (at least
>> >> rename class, move method) for Amber code ?
>> >
>> > I doubt it. Kaliningrad doesn't store Amber code as "proper code"
>> > in a Pharo image - but as fat string literals.
>> >
>> >> Or maybe there's a port in Amber IDE ?
>> >
>> > Nope. Not that I know of, and I would guess a HUGE undertaking as
>> > Amber is a bit different on meta side of things.
>> >
>> > But don't trust me on this, Nicolas can probably give better answer
>> > given his new work which I haven't looked much at yet.
>> >
>> > regards, Göran
>>
>> -- Nicolas Petton http://nicolas-petton.fr
>>

--
Nicolas Petton http://nicolas-petton.fr
Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

XumuK
Hi Nicolas, I`m interested in this project. Could you give more information about it? i would like to work on it.

Thanks, Rustem.

вторник, 13 ноября 2012 г., 1:27:23 UTC+3 пользователь nicolas petton написал:

There's a project I started with Benjamin during ESUG that takes this
approach. It's using Pharo's Nautilus and communicates live with Amber
through websocket to enable browsing Amber from a Pharo environment.

Currently browsing is working as well as compiling from Pharo
IIRC. There's also a very basic workspace. The next step would be to
enable inspecting of Amber object (we could then inspect live JavaScript
objects remotely for free from Pharo... miam!). Using the refactoring
engine of Pharo could also be possible, etc, etc.

I don't have enough time to keep working on it right now (maybe Ben is
willing to put some effort into it, I don't know), but if someone wants
to give the project some love, I could show what's working and how.

Cheers, Nico

Guido Stepken <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="joTDBclk-P8J">gste...@...> writes:

> Hi!
>
> I don't see any real sense in copying code to amber ... Why can't
> Pharo be amber's SDK?
>
> regards, Guido Stepken Am 12.11.2012 15:52 schrieb "Nicolas Petton"
> <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="joTDBclk-P8J">petton....@...>:
>
>>
>> Hi!
>>
>> It is planned to port the refactoring enine to Amber, but we're not
>> there yet :)
>>
>> Nico
>>
>> Göran Krampe <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="joTDBclk-P8J">goran....@...> writes:
>>
>> > On 11/12/2012 10:28 AM, laurent laffont wrote:
>> >> Hi,
>> >>
>> >> is there actually a way to use Pharo refactoring tools (at least
>> >> rename class, move method) for Amber code ?
>> >
>> > I doubt it. Kaliningrad doesn't store Amber code as "proper code"
>> > in a Pharo image - but as fat string literals.
>> >
>> >> Or maybe there's a port in Amber IDE ?
>> >
>> > Nope. Not that I know of, and I would guess a HUGE undertaking as
>> > Amber is a bit different on meta side of things.
>> >
>> > But don't trust me on this, Nicolas can probably give better answer
>> > given his new work which I haven't looked much at yet.
>> >
>> > regards, Göran
>>
>> -- Nicolas Petton http://nicolas-petton.fr
>>

--
Nicolas Petton http://nicolas-petton.fr
Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

Nicolas Petton

Excellent!

Sure I can :) What about a Skype call?

Nico

--
XumuK <[hidden email]> writes:

> Hi Nicolas, I`m interested in this project. Could you give more information
> about it? i would like to work on it.
>
> Thanks, Rustem.
>
> вторник, 13 ноября 2012 г., 1:27:23 UTC+3 пользователь nicolas petton
> написал:
>>
>>
>> There's a project I started with Benjamin during ESUG that takes this
>> approach. It's using Pharo's Nautilus and communicates live with Amber
>> through websocket to enable browsing Amber from a Pharo environment.
>>
>> Currently browsing is working as well as compiling from Pharo
>> IIRC. There's also a very basic workspace. The next step would be to
>> enable inspecting of Amber object (we could then inspect live JavaScript
>> objects remotely for free from Pharo... miam!). Using the refactoring
>> engine of Pharo could also be possible, etc, etc.
>>
>> I don't have enough time to keep working on it right now (maybe Ben is
>> willing to put some effort into it, I don't know), but if someone wants
>> to give the project some love, I could show what's working and how.
>>
>> Cheers, Nico
>>
>> Guido Stepken <[hidden email] <javascript:>> writes:
>>
>> > Hi!
>> >
>> > I don't see any real sense in copying code to amber ... Why can't
>> > Pharo be amber's SDK?
>> >
>> > regards, Guido Stepken Am 12.11.2012 15:52 schrieb "Nicolas Petton"
>> > <[hidden email] <javascript:>>:
>> >
>> >>
>> >> Hi!
>> >>
>> >> It is planned to port the refactoring enine to Amber, but we're not
>> >> there yet :)
>> >>
>> >> Nico
>> >>
>> >> Göran Krampe <[hidden email] <javascript:>> writes:
>> >>
>> >> > On 11/12/2012 10:28 AM, laurent laffont wrote:
>> >> >> Hi,
>> >> >>
>> >> >> is there actually a way to use Pharo refactoring tools (at least
>> >> >> rename class, move method) for Amber code ?
>> >> >
>> >> > I doubt it. Kaliningrad doesn't store Amber code as "proper code"
>> >> > in a Pharo image - but as fat string literals.
>> >> >
>> >> >> Or maybe there's a port in Amber IDE ?
>> >> >
>> >> > Nope. Not that I know of, and I would guess a HUGE undertaking as
>> >> > Amber is a bit different on meta side of things.
>> >> >
>> >> > But don't trust me on this, Nicolas can probably give better answer
>> >> > given his new work which I haven't looked much at yet.
>> >> >
>> >> > regards, Göran
>> >>
>> >> -- Nicolas Petton http://nicolas-petton.fr 
>> >>
>>
>> --
>> Nicolas Petton http://nicolas-petton.fr 
>>

--
Nicolas Petton
http://nicolas-petton.fr
Reply | Threaded
Open this post in threaded view
|

Re: Refactoring tools

XumuK
Let`s try today in evening after 22.00 UTC+3

четверг, 29 ноября 2012 г., 22:55:40 UTC+3 пользователь nicolas petton написал:

Excellent!

Sure I can :) What about a Skype call?

Nico

--
XumuK <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="mQHoDQTbv5EJ">hubb...@...> writes:

> Hi Nicolas, I`m interested in this project. Could you give more information
> about it? i would like to work on it.
>
> Thanks, Rustem.
>
> вторник, 13 ноября 2012 г., 1:27:23 UTC+3 пользователь nicolas petton
> написал:
>>
>>
>> There's a project I started with Benjamin during ESUG that takes this
>> approach. It's using Pharo's Nautilus and communicates live with Amber
>> through websocket to enable browsing Amber from a Pharo environment.
>>
>> Currently browsing is working as well as compiling from Pharo
>> IIRC. There's also a very basic workspace. The next step would be to
>> enable inspecting of Amber object (we could then inspect live JavaScript
>> objects remotely for free from Pharo... miam!). Using the refactoring
>> engine of Pharo could also be possible, etc, etc.
>>
>> I don't have enough time to keep working on it right now (maybe Ben is
>> willing to put some effort into it, I don't know), but if someone wants
>> to give the project some love, I could show what's working and how.
>>
>> Cheers, Nico
>>
>> Guido Stepken <[hidden email] <javascript:>> writes:
>>
>> > Hi!
>> >
>> > I don't see any real sense in copying code to amber ... Why can't
>> > Pharo be amber's SDK?
>> >
>> > regards, Guido Stepken Am 12.11.2012 15:52 schrieb "Nicolas Petton"
>> > <[hidden email] <javascript:>>:
>> >
>> >>
>> >> Hi!
>> >>
>> >> It is planned to port the refactoring enine to Amber, but we're not
>> >> there yet :)
>> >>
>> >> Nico
>> >>
>> >> Göran Krampe <[hidden email] <javascript:>> writes:
>> >>
>> >> > On 11/12/2012 10:28 AM, laurent laffont wrote:
>> >> >> Hi,
>> >> >>
>> >> >> is there actually a way to use Pharo refactoring tools (at least
>> >> >> rename class, move method) for Amber code ?
>> >> >
>> >> > I doubt it. Kaliningrad doesn't store Amber code as "proper code"
>> >> > in a Pharo image - but as fat string literals.
>> >> >
>> >> >> Or maybe there's a port in Amber IDE ?
>> >> >
>> >> > Nope. Not that I know of, and I would guess a HUGE undertaking as
>> >> > Amber is a bit different on meta side of things.
>> >> >
>> >> > But don't trust me on this, Nicolas can probably give better answer
>> >> > given his new work which I haven't looked much at yet.
>> >> >
>> >> > regards, Göran
>> >>
>> >> -- Nicolas Petton http://nicolas-petton.fr
>> >>
>>
>> --
>> Nicolas Petton http://nicolas-petton.fr
>>

--
Nicolas Petton
http://nicolas-petton.fr