[squeak-dev] Live Coding Demonstration Success!

Jeff Gonis jeffgonis at fastmail.com
Sun Jan 24 22:23:07 UTC 2016


Hi Everyone,

Thanks first off for the kind response.  I hope to do more
demonstrations in the future and report back about those. Unfortunately
I did not make a recording of this demo, as the setup in the meeting
room was somewhat primitive.  To be honest though, the demo was aimed
at people who had no experience with Smalltalk whatsoever and so it was
pretty basic. I also tried to keep it short and sweet so it was
probably only 20-25 minutes.  As I build up to a more full-featured
demo I will work to figure out a recording setup so that I can share it
with the list.

My main motivation in sharing my story was thinking back a few months
to a discussion on the list where some of the regular Squeakers
lamented feeling a bit down about the usage of squeak and the
community surrounding it, feeling sort of like they were shouting into
the void and no one was using the things being developed.  So I just
wanted to share a small success story to let people know that their
work is being used, seen, and appreciated out in the "real world"
(whatever that means).

Anyway, thanks again to everyone for all the work that has gone into
Squeak, and I hope to write back again with an update on another
successful demo!

Jeff


On Fri, Jan 22, 2016, at 02:46 AM, Dimitris Chloupis 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?" 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/20160124/c2c06be8/attachment.htm


More information about the Squeak-dev mailing list