So I finally built the Python live coding library I was talking about. I
named it "pylivecoding"

https://github.com/kilon/pylivecoding

Live codig does mean in this case , replace methosd with updated ones for
each instance of a class. Same thing you would expect in Pharo. Very simple
to use , only 50 lines of code.

it can also work with not only modifying methods , but aslo renaming them
and removing or adding new ones. I have tested it during the day, seems to
work ok but of course more thoroug testing needs to be done.

Of course nowhere near the Pharo experience. But the main idea is there,
you open yoru favorite editor IDE, you code away and at the same time you
see your code come alive with no delays or weird side effects/ requirements.

Of course it works with debuggers too, I use it from my python ide, python
debugger and iptyhon all the time. Again usual workflow , debug, correct,
continue. No issues so far.


On Sat, Oct 14, 2017 at 4:37 AM Dimitris Chloupis <kilon.al...@gmail.com>
wrote:

> I don’t care about Python vs Pharo debate. I love both I use both.
>
> My ultimate goal is to unite the two under a single Uber powerful live
> coding environment part of my project Atlas. With direct mapping between
> Pharo and Python objects and no compromises. A workflow that will be
> seamless that you won’t know if you use Python or Pharo libraries as the
> Atlas environment will allow you to work with both languages in a symbiotic
> relationship.
>
> That was a dream of mine that I did not dear to reveal now slowly and
> steadily becomes reality.
>
> I am extending the live coding environment of python and later will tackle
> the subject of a python image format.
>
> Already Atlas can use python libraries from Pharo but that’s about it ,
> but after this revelation I can move to stage 2 of full synchronization
> between Python and Pharo. Even now Atlas allows you to use Pharo syntax to
> fully access Python libraries. But integration is skin deep and is what is
> going to improve the next years.
>
> So it seems something good came out of this very long discussion. Atlas is
> going for a big update. This thread has been a huge inspiration for me.
> Super excited :)
>
> On Sat, 14 Oct 2017 at 03:40, Andrew Glynn <aglyn...@gmail.com> wrote:
>
>> The first language I played with, I was nearly 5, was a live environment,
>> Forth. I used it on an old PDP my mother had bought that was being
>> surplused at the company she worked at. I used Forth until I was in my
>> early teens, it was far superior to the BASIC that most other kids I knew
>> who knew any programming used. It wasn't Smalltalk, but in many of the
>> areas it was used (production automation is one major area), the language
>> that most often replaced it *was* Smalltalk.
>>
>> The biggest difference, for me, as I wrote in the article the other day,
>> is the ability to build-on rather than build-with, which in turn is based
>> on the environment being written in itself. Ruby *looks* very much like
>> Smalltalk, but it *works* like Java; Python works *more* like Smalltalk,
>> and it's a much better live environment than Java or Ruby, because more of
>> it is written in itself, but too much of Python is written in C, and that
>> causes problems. If the code that interprets/compiles your code follows the
>> same rules, the machine code it generates will usually also follow the same
>> rules, and those rules/restrictions are, for the most part, designed to
>> make code more reliable.
>>
>> As well, RVM has proven Smalltalk (specifically Squeak / Pharo, though
>> admittedly an older version) can scale to 1024 cores nearly linearly.
>>
>> Python has a decent developer base but it's almost all OSS and almost all
>> on Linux. Very few applications in Python are in areas where reliability is
>> absolutely necessary, or even all that important.  Like Smalltalk, it's a
>> general purpose language in a niche, but the niches are very different. For
>> years, decades really, any good version of Smalltalk cost an arm and a leg
>> (some of them both of each), and as a result it tended to be used only
>> where things really *had* to work.
>>
>> Pharo is a great OSS Smalltalk, IMHO by the best to date (Squeak was/is
>> good, but the LaF was never professional enough for it to be taken as
>> seriously as it deserves, it just looks too much like a toy although in
>> reality it's very powerful). Having the capability to build-on a reliable,
>> attractive and enjoyable base without signing over my great-grand-child's
>> first born is fantastic, and a great achievement for those who accomplished
>> it.
>>
>> Kendrick is an example of what can be done if you build-*on*: it was
>> built on Moose, which is built on Glamorous, which is built on Morphic,
>> which itself is based on a couple of decades work olving the basic problems
>> inherent to UI's and MVC-type UI's in particular. Kendrick itself was
>> written in a very short time when you compare it with other epidemiology
>> programs, *if* you only count the time spent on Kendrick itself. It's an
>> inherently complex problem area, and it's a life or death problem area.
>> That an application capable of working reliably enough to be trusted in
>> that area was built in a short time, because it was built-on a couple of
>> decades of OSS work, is a huge compliment to those who were involved.
>>
>> Unfortunately for me, I wasn't, ☺. But at least I can take advantage of
>> it existence now.
>>
>> Andrew
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> -----Original Message-----
>>
>> *Date*: Fri, 06 Oct 2017 21:18:28 +0000
>> *Subject*: Re: [Pharo-users] Behold Pharo: The Modern Smalltalk
>> *To*: Any question about pharo is welcome <pharo-users@lists.pharo.org
>> <any%20question%20about%20pharo%20is%20welcome%20%3cpharo-us...@lists.pharo.org%3e>
>> >
>> Reply-to: Any question about pharo is welcome <
>> pharo-users@lists.pharo.org>
>> *From*: Dimitris Chloupis <kilon.al...@gmail.com
>> <dimitris%20chloupis%20%3ckilon.al...@gmail.com%3e>>
>> Wise not to mention Ruby and Python and Pick the worst of the worst in
>> OOP. Because frankly the competition for Pharo against those two behemoths
>> can be quite brutal in the flexibility and power of OOP.
>>
>> And no , these language can do live coding with ease. I know because I
>> currently code live coding style with Python for an app I am making. Sure
>> it wont provide you with a live system out of the box, but put in 10 lines
>> of code and you already ready to go with hardcore live coding. At least
>> Python , Ruby being practically a rip off of Smalltalk language may need
>> even less.
>>
>> iPython which by the way is by far the most popular Python tool is the
>> real deal, a full blow live coding enviroment.
>>
>> To my suprise its not even hard to do live coding with C/C++ including
>> using image format. To my shock live coding is actually supported by both
>> the OS and the hardware. Hardware has its own exception system , OS has an
>> image flie format called "memory mapped files" used for DLLs and a lot of
>> essential functionality.
>>
>> For some weird reason however its well hidden and not that much utilised
>> by coders. They really love long compile times, dont ask me why.
>>
>> But yeah C++ even though it has come a long way with its template system,
>> its still the king of ugly. That sytax, oh the horrors of that syntax.....
>> yiaks !!!
>>
>> I am so enternal greatful that Pharo introduced me to live coding and
>> opened my eyes to universe of fun and productivity. I cannot imagine coding
>> an other way ever again.
>>
>> I really hope that we take this further though.
>>
>> On Wed, Oct 4, 2017 at 1:31 PM horrido <horrido.hobb...@gmail.com> wrote:
>>
>> Behold Pharo: The Modern Smalltalk
>> <
>> https://medium.com/smalltalk-talk/behold-pharo-the-modern-smalltalk-38e132c46053
>> >
>>
>> If you would like to suggest some edits, I'm all ears. Anything to improve
>> the impact of the article.
>>
>> Thanks.
>>
>>
>>
>> --
>> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
>>
>>
>>

Reply via email to