[squeak-dev] Live Coding Demonstration Success!

Dimitris Chloupis kilon.alios at gmail.com
Fri Jan 22 09:46:12 UTC 2016


"Will you be publishing this Package in the SqueakMap or somewhere?
Could this work for other languages like
Haskell to Smalltalk
or
Haskell to C to Smalltalk?"

Yes I will publish it in github. Yes it can work for any language that
gives access to memory mapped files . I will implement it also for python.
I currently use sockets for this IPC , which allow me to use python
libraries from pharo. But of course sockets are nowhere as fast as shared
memory. However my implementation is not a magic pill and will need
modifications to satisfy personal needs, but I plan to document it with a
set of video tutorials that they will explain how it works. Currently you
can use a C++ library from pharo/squeak if you export it as a C library so
it does not do name mangling , however my approach with memory mapped files
does not allow you only to use C++ as a library but even "hack" inside
executables and even store the live state of those executables together
with the live state of your image. Essentially it will allows to run pharo
with C++ side by side and interface between the two in many different ways.

On Fri, Jan 22, 2016 at 4:20 AM Kjell Godo <squeaklist at gmail.com> wrote:

> Will you be publishing this Package in the SqueakMap or somewhere?
> Could this work for other languages like
> Haskell to Smalltalk
> or
> Haskell to C to Smalltalk?
> I have thought about trying this but i don't do C or C++
> Although i did do a Bank kiosk in TurboC in the 1980s
> TuboC was nice     it was good
>
> i got scarred for life trying to use an early
> Microsoft C compiler
> in the mid 1980s
> that was just awrful
> people in that class at the UW were dropping like flies
> one girl was hiding under one of the tables in the lab on the final day
> the professor was getting pretty sick and tired
> of getting software handed in that didn't work
> so he was giving out zero grades for the class project to anyone
> who handed in a class project in Microsoft c
> that didn't work
> and i can tell you
> there were a lot of zeros handed out that day
> i think most of us got zeros
> even though we worked really hard
> using a c compiler that
> basically was pretty much just emitting
> random sequences of semi executable drivel
> i tried using the UNIX C compiler to get it going
> and then port it back to
> Microsoft c
> crashed and burned
> out of time
> no way hozay
> yyyyyyou get zero
> well if i was quick
> i would have gotten down on all fours
> and gone under the table with the girl
> she was a jolly Asian girl
> at least i could have gotten
> a pretty good quip out of the deal
>
> so
>
> i swore off of c
> right then and there
> i swore off of it
> for life
> the instant that zero hit
> the instant i could see zero coming and my name on it
> and no way to dodge it left
> just a helpless prisoner of war kneeling in the headlights
> with hands behind my head
> that moment when you just give up
> because haint nothing more you can do
> but just get hit
> and it's too late to cheat
> too late to band together with the cheaters and collaborate
> they probably all got zeroed out too anyway for being too similar
> or maybe the prof just rolled up his eyes up and over and back and said
> caint give every dang one of em a zero today
> and i swore that on my death bed i would say
> Haint touched it since
>
> but TurboC was pretty good
> yeah TurboC was almost Smalltalk like
> yeah TurboC was all right
> i made a bank kiosk out of
> TurboC and TurboProlog
> which was noted for being
> error free
>
> probably Borland figured that
> based on all our heinous experiences with c
> that building a C compiler that works
> a C compiler that actual works
> would be pretty near to a
> wide open blue ocean deal
> ie
> no competition exists
>
>
>
>
> On Thursday, January 21, 2016, Dimitris Chloupis <kilon.alios at gmail.com>
> wrote:
>
>> Great job, I think they will be suprised even more that you can use
>> smalltalk as scripting language for C++ projects which is currently what I
>> do :)
>>
>> Though I am using pharo instead of squeak , there is little reason for
>> the same concepts not to apply for squeak . I am actually trying to make a
>> shared memory(based on memory mapped files)  frameworks where pharo shares
>> memory with a c++ executable and they can talk to each other, shared data
>> and live state and use each other's functions and libraries , sort of C++
>> being pharo's best buddy and vice versa ;)
>>
>> On Thu, Jan 21, 2016 at 10:42 PM Jeff Gonis <jeffgonis at fastmail.com>
>> wrote:
>>
>>> Hi Squeakers,
>>>
>>> I just wanted to write in with a quick report on a recent demonstration
>>> I did for my my colleagues at work.
>>>
>>> At the company I work for we are given one Friday a month to work on any
>>> sort of project that interests us, whether or not it is related to the
>>> work we do for the company, and so I usually end up playing around with
>>> a project in Squeak. As part of the deal, we are asked to occasionally
>>> present what we are working on to our peers, in the hopes that they can
>>> do some learning from our projects as well.
>>>
>>> I didn't have any projects ready to demonstrate in a compelling way so I
>>> decided to instead just show off Squeak itself and give people kind of
>>> an introduction to Smalltalk and what I find so compelling about it. I
>>> decided to go ahead and live code a version of the bouncing atoms morph,
>>> using submorphs for the atoms, and developing the code as the parent
>>> morph "stepped" away on screen, updating its behavior seamlessly.  I
>>> demonstrated adding variables and method without stopping, changing the
>>> methods and debugging them when I made mistakes, changing the entire
>>> class of the onscreen morphs as the simulation ran and some of the cool
>>> things about the language itself as well, like "build-your-own" if
>>> statements and such.
>>>
>>> Overall I think that I kind of blew a bunch of people's minds, what with
>>> our day to day work being in C++ and always being in that
>>> edit-compile-run-test cycle. Several people came up to me afterwards to
>>> say how much they enjoyed seeing a different view of programming and
>>> what it could represent and I hope to put together a few more
>>> demonstrations in the coming months.
>>>
>>> Anyway, I just wanted to let you know that Smalltalk is still surprising
>>> people and exceeding their expectations 35 years on, and a large part of
>>> it is thanks to all the great work that goes into Squeak from its
>>> contributors.
>>>
>>> Thanks for your efforts!
>>> Jeff
>>>
>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20160122/d326e252/attachment-0001.htm


More information about the Squeak-dev mailing list