New Introductory Tutorial

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

New Introductory Tutorial

EuanM
I've created Yet Another Smalltalk First
Steps tutorial.

This is intended as one of a series.

It is designed to be cross-platform across

    Squeak 5
    Pharo 4
    Seaside 3.1
    Cuis
    Dolphin 6

If you have experience running any of these systems on Windows, Linux
or MacOS, please check to see if I have the instructions correct for
your chosen pairing of Smalltalk and OS platform.

(As you'll see when you look, I do not have detailed instructions for
aspects of MacOS).

The document is at:
http://smalltalkinsmallsteps.blogspot.co.uk/2015/11/get-smalltalk-up-and-running.html

(It's intended to move to a different blog after this review process).

I feel the need to do this as cross-Smalltalks tutorial because of
findings and 4 charts  I've placed at:
http://smalltalkinsmallsteps.blogspot.co.uk/2015/11/mindshare-of-smalltalk-in-development.html

Essentially, Smalltalk mindshare and use is incredibly tiny, compared
to other languages in the same space.  (We all know this, but seeing
it represented graphically has a more visceral effect, IMO)

Aggregating interest in all the Smalltalks still does not bring more
than a tiny proportion of the interest in, and use of, Ruby.

In turn, Ruby is (quite understandably) small in comparison to JavaScript.

Comparing interest in any specific Smalltalk is, predictably, smaller
than the aggregate interest in Smalltalk.

Our community seems determined to split itself into smaller and
smaller sub-communities.  I think we do ourselves a disservice this
way.

My initial contribution will be to try to provide some explicitly
pan-Smalltalk beginners' tutorials, like this one.

Cheers, and happy Smalltalking,
     EuanM

_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
Reply | Threaded
Open this post in threaded view
|

Re: New Introductory Tutorial

KenDickey
On Sat, 14 Nov 2015 05:02:53 +0000
EuanM <[hidden email]> wrote:

> I've created Yet Another Smalltalk First
> Steps tutorial.
...
> If you have experience running any of these systems on Windows, Linux
> or MacOS, please check to see if I have the instructions correct for
> your chosen pairing of Smalltalk and OS platform.

On Linux, Cuis works fine from the command line once the proper SqueakVM is installed.

E.g. in the Cuis-Smalltalk-Dev directory
   squeak  Cuis4.2-2571.image

> The document is at:
> http://smalltalkinsmallsteps.blogspot.co.uk/2015/11/get-smalltalk-up-and-running.html

The different Squeak VMs are transition points and might need some explanation.

The stack-interpreter VM is a traditional bytecode interpreter.

Cog does just-in-time (JIT) compilation to native code for faster execution.

Spur is a new memory model which simplifies object layouts and is common between 32 and 64 bit memory architectures.  Because of object format/layout changes Spur images must be run on a Spur VMs and non-Spur images on a non-Spur VM.  You have to match the VM to the object format.

As far as I am aware, there is no Spur image for Cuis yet.  We need to write a tool to read a current image and write it out in Spur format.  Spur code is still evolving rapidly, so writing the  image translation has not been a priority for us.  Now that Squeak 5.0 is out (the 4.x series used the old format, 5.0 uses Spur) things are probably stable enough that we can get to this.

--

One side note is that none of the Cog (JIT) VMs run on ARM Chromebooks under Chrome OS.  I don't run Intel, but suspect the JIT is broken there as well.  This apparently has to do with the tightening up of code security policies in the Chromium OS.  As JIT means writing data, then executing this as code, there is an obvious security hole to be addressed.

It appears that there are are/should be rubrics/rules which allow JIT.  The V8 JavaScript VM does JIT on ChromeOS.  But it takes time to dig through the megabytes of code and docs to get at the details.  This is in progress, but there is not much resource (people time) to devote to it.

FYI,
-KenD

_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
-KenD
Reply | Threaded
Open this post in threaded view
|

Re: New Introductory Tutorial

Juan Vuletich-4
In reply to this post by EuanM
Hi EuanM,

This is a great initiative. Thanks for including Cuis in the bunch!

Cheers,
Juan Vuletich

On 14/11/2015 02:02 a.m., EuanM wrote:

> I've created Yet Another Smalltalk First
> Steps tutorial.
>
> This is intended as one of a series.
>
> It is designed to be cross-platform across
>
>      Squeak 5
>      Pharo 4
>      Seaside 3.1
>      Cuis
>      Dolphin 6
>
> If you have experience running any of these systems on Windows, Linux
> or MacOS, please check to see if I have the instructions correct for
> your chosen pairing of Smalltalk and OS platform.
>
> (As you'll see when you look, I do not have detailed instructions for
> aspects of MacOS).
>
> The document is at:
> http://smalltalkinsmallsteps.blogspot.co.uk/2015/11/get-smalltalk-up-and-running.html
>
> (It's intended to move to a different blog after this review process).
>
> I feel the need to do this as cross-Smalltalks tutorial because of
> findings and 4 charts  I've placed at:
> http://smalltalkinsmallsteps.blogspot.co.uk/2015/11/mindshare-of-smalltalk-in-development.html
>
> Essentially, Smalltalk mindshare and use is incredibly tiny, compared
> to other languages in the same space.  (We all know this, but seeing
> it represented graphically has a more visceral effect, IMO)
>
> Aggregating interest in all the Smalltalks still does not bring more
> than a tiny proportion of the interest in, and use of, Ruby.
>
> In turn, Ruby is (quite understandably) small in comparison to JavaScript.
>
> Comparing interest in any specific Smalltalk is, predictably, smaller
> than the aggregate interest in Smalltalk.
>
> Our community seems determined to split itself into smaller and
> smaller sub-communities.  I think we do ourselves a disservice this
> way.
>
> My initial contribution will be to try to provide some explicitly
> pan-Smalltalk beginners' tutorials, like this one.
>
> Cheers, and happy Smalltalking,
>       EuanM
>
> _______________________________________________
> Cuis mailing list
> [hidden email]
> http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
>


_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
Reply | Threaded
Open this post in threaded view
|

Re: New Introductory Tutorial

Hannes Hirzel
Hi Euan

Worthwhile to refer to in your tutorial is as well the web version of
the ProfStef Smalltalk tutorial implemented in Amber Smalltalk

http://amber-smalltalk.github.io/trysmalltalk/

(https://github.com/amber-smalltalk/trysmalltalk)

It explains the syntax, control constructs and some basic classes. It
was first implemented in Pharo and then ported.

--Hannes

On 11/17/15, Juan Vuletich <[hidden email]> wrote:

> Hi EuanM,
>
> This is a great initiative. Thanks for including Cuis in the bunch!
>
> Cheers,
> Juan Vuletich
>
> On 14/11/2015 02:02 a.m., EuanM wrote:
>> I've created Yet Another Smalltalk First
>> Steps tutorial.
>>
>> This is intended as one of a series.
>>
>> It is designed to be cross-platform across
>>
>>      Squeak 5
>>      Pharo 4
>>      Seaside 3.1
>>      Cuis
>>      Dolphin 6
>>
>> If you have experience running any of these systems on Windows, Linux
>> or MacOS, please check to see if I have the instructions correct for
>> your chosen pairing of Smalltalk and OS platform.
>>
>> (As you'll see when you look, I do not have detailed instructions for
>> aspects of MacOS).
>>
>> The document is at:
>> http://smalltalkinsmallsteps.blogspot.co.uk/2015/11/get-smalltalk-up-and-running.html
>>
>> (It's intended to move to a different blog after this review process).
>>
>> I feel the need to do this as cross-Smalltalks tutorial because of
>> findings and 4 charts  I've placed at:
>> http://smalltalkinsmallsteps.blogspot.co.uk/2015/11/mindshare-of-smalltalk-in-development.html
>>
>> Essentially, Smalltalk mindshare and use is incredibly tiny, compared
>> to other languages in the same space.  (We all know this, but seeing
>> it represented graphically has a more visceral effect, IMO)
>>
>> Aggregating interest in all the Smalltalks still does not bring more
>> than a tiny proportion of the interest in, and use of, Ruby.
>>
>> In turn, Ruby is (quite understandably) small in comparison to
>> JavaScript.
>>
>> Comparing interest in any specific Smalltalk is, predictably, smaller
>> than the aggregate interest in Smalltalk.
>>
>> Our community seems determined to split itself into smaller and
>> smaller sub-communities.  I think we do ourselves a disservice this
>> way.
>>
>> My initial contribution will be to try to provide some explicitly
>> pan-Smalltalk beginners' tutorials, like this one.
>>
>> Cheers, and happy Smalltalking,
>>       EuanM
>>
>> _______________________________________________
>> Cuis mailing list
>> [hidden email]
>> http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
>>
>
>
> _______________________________________________
> Cuis mailing list
> [hidden email]
> http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
>

_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org