Where is the postcard with syntax?
Hi guys, we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting. Uko
you have the flyer of Damien (no idea where it is) but no real postcard. Stef On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir. Uko On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
I got it from Stef, who always said it came originally from Ralph Johnson. http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard Googling around finds various copies of this, but no original source. Oscar On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
I made a little cheat sheet package from http://www.smalltalkhub.com/#!/~philippeback/HOExtras/packages/HOCheatSheet "A HOCheatSheet is a set of useful things to remember See Class Side. Using content from Chris Rathman / ChrisRath@aol.com" Obviously not a postcard :-) Phil On Mon, Jun 16, 2014 at 3:35 PM, Oscar Nierstrasz < oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
Thank you, this is interesting Uko On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing: exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y Uko On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
personally I don't like this postcard , it looks too much like "snake oil marketing" to me. It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis. Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis. On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
Itâs hard for me to agree with you. Pharoâs compact syntax is one of main features for me. Because in all other languages there was a time when I encountered some unknown constructs even after a year of usage. In Pharo you just have to learn syntax from postcard, and then if you want to know how some thing woks you just read the source code. Maybe this is some special thing related to me. On 17 Jun 2014, at 09:59, kilon alios <kilon.alios@gmail.com> wrote:
personally I don't like this postcard , it looks too much like "snake oil marketing" to me.
It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis.
Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis.
On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote: Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
On 17 Jun 2014, at 10:04, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Itâs hard for me to agree with you. Pharoâs compact syntax is one of main features for me. Because in all other languages there was a time when I encountered some unknown constructs even after a year of usage. In Pharo you just have to learn syntax from postcard, and then if you want to know how some thing woks you just read the source code.
Maybe this is some special thing related to me.
I am with you Yuriy and I disagree with Kilon: Pharo/Smalltalk syntax is really special, it is about as minimal as you can get for a messaging object system, without being too simple. It is also almost magically elegant, IMO. I can only think of Scheme being somewhat similar. Most dynamic/scripting style languages still have too much syntax in the name of convenience and too many special cases or weird semantics. Statically typed languages are off the scale in this regard. Yes, to work in any development environment, you need to learn how to use many libraries and frameworks, but this is independent of the core language. BTW, it would be even cooler if the postcard method would make real sense and actually do something, but that is a real challenge ;-)
On 17 Jun 2014, at 09:59, kilon alios <kilon.alios@gmail.com> wrote:
personally I don't like this postcard , it looks too much like "snake oil marketing" to me.
It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis.
Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis.
On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote: Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
Simple ~= Easy. Smalltalk is simple (simpler then most of other PLs), but it's not easy (to understand and master, especially after other PLs). -- Best regards, Dennis Schetinin 2014-06-17 11:59 GMT+04:00 kilon alios <kilon.alios@gmail.com>:
personally I don't like this postcard , it looks too much like "snake oil marketing" to me.
It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis.
Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis.
On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
2014-06-19 16:44 GMT+02:00 Dennis Schetinin <chaetal@gmail.com>:
Simple ~= Easy. Smalltalk is simple (simpler then most of other PLs), but it's not easy (to understand and master, especially after other PLs).
Intersting... I'm certainly too biased after all these years of Smalltalk, but I would have thought the exact contrary... What exactly isn't easy in Smalltalk versus other PL? Is understanding and mastering C++, lisp, haskell, whatever, simpler than Smalltalk? Or do you only mean that difference between any two other languages is less than difference to Smalltalk?
--
Best regards,
Dennis Schetinin
2014-06-17 11:59 GMT+04:00 kilon alios <kilon.alios@gmail.com>:
personally I don't like this postcard , it looks too much like "snake oil marketing" to me.
It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis.
Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis.
On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
As I started Smalltalk with Pharo 1.3, I may resonate with Dennis point of view. Simple in syntax but not easy indeed. There are ways to do things and smart ways that require a while to sink in. Basically, it turned my mind upside down and I realised that a lot of things are easier to do in Smalltalk once you do it the Smalltalk way. And I really love the minimalism of the syntax and the environment. Heck, I chose to go with Pharo for my paying customers and it works fine. This explaining that, I'd better have a working solution if I want to eat. This helps with the learning. Not sure I would have persisted if it was not the case though. Phil On Thu, Jun 19, 2014 at 7:01 PM, Nicolas Cellier < nicolas.cellier.aka.nice@gmail.com> wrote:
2014-06-19 16:44 GMT+02:00 Dennis Schetinin <chaetal@gmail.com>:
Simple ~= Easy. Smalltalk is simple (simpler then most of other PLs), but it's not easy (to understand and master, especially after other PLs).
Intersting... I'm certainly too biased after all these years of Smalltalk, but I would have thought the exact contrary... What exactly isn't easy in Smalltalk versus other PL? Is understanding and mastering C++, lisp, haskell, whatever, simpler than Smalltalk? Or do you only mean that difference between any two other languages is less than difference to Smalltalk?
--
Best regards,
Dennis Schetinin
2014-06-17 11:59 GMT+04:00 kilon alios <kilon.alios@gmail.com>:
personally I don't like this postcard , it looks too much like "snake oil marketing" to me.
It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis.
Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis.
On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
As for me, Smalltalk was both really simple and easy at the time I met it many years ago. Maybe that's because I have been experiencing so many problems on the "C++" way and have been looking for solutions⦠and Smalltalk had them all. But I have been teaching smalltalk for almost ten years by now, and I see that for the most of students (I would say for 90 â 95% of them) Smalltalk is not easy. I don't know why. I wonder why, actually. But that's how it is. And those who don't understand, who don't "feel" Smalltalk always says "it's too complex". You see, they confuse "it is complex" with "it is hard". And I think I saw exactly the same thing in that Kilon Alios's message. That's why I haven't manage not to answer :) What I wanted to say is that Smalltalk is really simple: it is based on few essential (and very human) ideas (there could be even fewer though), has a minimalistic syntax (could have even less syntax though I think). Other languages are much more complex. I don't know Python well, but I bet it's much more complex than Smalltalk. But when you do complex things day by day, for many years⦠they become easier. You just don't feel complexity anymore. It's still there, and it still hinders⦠but you don't see that anymore. And by now, any other, even much more simpler tool will be uncomfortable, strange⦠and hard. I think that's why most students do not embrace Smalltalk: it's different, it's unusual, it's strange⦠so I can admit: it's not easy. But please do not say it's complex! :) I believe these thoughts were inspired by some articles on "easy vs. simple", "simple is objective while easy is subjective" etc. â¦They can be easily googled if need be. -- Best regards, Dennis Schetinin 2014-06-19 21:01 GMT+04:00 Nicolas Cellier < nicolas.cellier.aka.nice@gmail.com>:
2014-06-19 16:44 GMT+02:00 Dennis Schetinin <chaetal@gmail.com>:
Simple ~= Easy.
Smalltalk is simple (simpler then most of other PLs), but it's not easy (to understand and master, especially after other PLs).
Intersting... I'm certainly too biased after all these years of Smalltalk, but I would have thought the exact contrary... What exactly isn't easy in Smalltalk versus other PL? Is understanding and mastering C++, lisp, haskell, whatever, simpler than Smalltalk? Or do you only mean that difference between any two other languages is less than difference to Smalltalk?
--
Best regards,
Dennis Schetinin
2014-06-17 11:59 GMT+04:00 kilon alios <kilon.alios@gmail.com>:
personally I don't like this postcard , it looks too much like "snake oil marketing" to me.
It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis.
Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis.
On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
I don't see how something that is simple cannot be easy unless its not really simple. So far I have not found Pharo simpler to Python. As a coding experience. Maybe if I stay around 10 year I will. I know there are things that Pharo / Smalltalk does better than Python like closure , or concepts associated with functional programming etc. But in the end of the day I don't care about languages that theoretically are great. I have not yet seen great gains in the language while I code, maybe because in the end of the day I just code in a very simplistic way, I am not a pro coder, I don't have the experience to use complex concepts like an experienced coder would do. I know a few things and that is what I use. But I don't stop learning . In the end of the day yes I find Smalltalk and Pharo much more difficult to Python because of the lack of documentation. Even books on Smalltalk seem to be decades old. Pharo has zero official reference documentation and I don't , like many others , like to read code , reading code is very very very slow. Did I just said that I don't like to read code, additionally I don't like to read code. I hate reading code with no comments. The syntax however is very simple. I also love that the syntax looks nothing like C, even though the vast majority of languages I know and I know most of the popular ones are C based. I never had a problem with the syntax. So I would say that Pharo is by far the type of language I love to read, if we exclude the fact that I don't like to read code and I hate reading uncommented code. So I cannot relate to your students, I don't see how anyone can see Smalltalk as complex at least on a syntax level unless he does not real understand what he learned. I am here however because I have fallen in love with live coding and the Smalltalk IDE. I was blown away with emacs but one day I asked at #emacs in IRC "hey guys would not be awesome if emacs had GUIs and a full blown language" and the answer I got " try Squeak " , "Oh its a lisp thing" , "No its smalltalk", "what on earth is smalltalk ?" and the rest is history. I would say that language-wise Smalltalk is by far the easiest language I have learned. But as a coding experience is hard because of lack of documentation, lack of good documentation and lack of libraries. I think however Pharo deserves to be loads more popular, its a very good effort and me and Pharo seem to have the same goals in terms of coding. "Elegance and directness". I don't care so much about "simplicity" because nothing in this world is really simple, not "ease of use" because nothing worth doing is easy to do. For me "elegance" is doing "the complex thing the simplest way possible without compromising" and "directness" means "do it now, zero delays, zero excuses". It seems to me Pharo is build on these ideals and I would be around as long as it follows them. On Thu, Jun 19, 2014 at 8:52 PM, Dennis Schetinin <chaetal@gmail.com> wrote:
As for me, Smalltalk was both really simple and easy at the time I met it many years ago. Maybe that's because I have been experiencing so many problems on the "C++" way and have been looking for solutions⦠and Smalltalk had them all.
But I have been teaching smalltalk for almost ten years by now, and I see that for the most of students (I would say for 90 â 95% of them) Smalltalk is not easy. I don't know why. I wonder why, actually. But that's how it is.
And those who don't understand, who don't "feel" Smalltalk always says "it's too complex". You see, they confuse "it is complex" with "it is hard". And I think I saw exactly the same thing in that Kilon Alios's message. That's why I haven't manage not to answer :)
What I wanted to say is that Smalltalk is really simple: it is based on few essential (and very human) ideas (there could be even fewer though), has a minimalistic syntax (could have even less syntax though I think). Other languages are much more complex. I don't know Python well, but I bet it's much more complex than Smalltalk. But when you do complex things day by day, for many years⦠they become easier. You just don't feel complexity anymore. It's still there, and it still hinders⦠but you don't see that anymore. And by now, any other, even much more simpler tool will be uncomfortable, strange⦠and hard. I think that's why most students do not embrace Smalltalk: it's different, it's unusual, it's strange⦠so I can admit: it's not easy. But please do not say it's complex! :)
I believe these thoughts were inspired by some articles on "easy vs. simple", "simple is objective while easy is subjective" etc. â¦They can be easily googled if need be.
--
Best regards,
Dennis Schetinin
2014-06-19 21:01 GMT+04:00 Nicolas Cellier < nicolas.cellier.aka.nice@gmail.com>:
2014-06-19 16:44 GMT+02:00 Dennis Schetinin <chaetal@gmail.com>:
Simple ~= Easy.
Smalltalk is simple (simpler then most of other PLs), but it's not easy (to understand and master, especially after other PLs).
Intersting... I'm certainly too biased after all these years of Smalltalk, but I would have thought the exact contrary... What exactly isn't easy in Smalltalk versus other PL? Is understanding and mastering C++, lisp, haskell, whatever, simpler than Smalltalk? Or do you only mean that difference between any two other languages is less than difference to Smalltalk?
--
Best regards,
Dennis Schetinin
2014-06-17 11:59 GMT+04:00 kilon alios <kilon.alios@gmail.com>:
personally I don't like this postcard , it looks too much like "snake oil marketing" to me.
It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis.
Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis.
On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
On 19 Jun 2014, at 21:01, kilon alios <kilon.alios@gmail.com> wrote:
I don't see how something that is simple cannot be easy unless its not really simple.
So far I have not found Pharo simpler to Python. As a coding experience. Maybe if I stay around 10 year I will. I know there are things that Pharo / Smalltalk does better than Python like closure , or concepts associated with functional programming etc. But in the end of the day I don't care about languages that theoretically are great.
I have not yet seen great gains in the language while I code, maybe because in the end of the day I just code in a very simplistic way, I am not a pro coder, I don't have the experience to use complex concepts like an experienced coder would do. I know a few things and that is what I use. But I don't stop learning .
In the end of the day yes I find Smalltalk and Pharo much more difficult to Python because of the lack of documentation. Even books on Smalltalk seem to be decades old. Pharo has zero official reference documentation and I don't , like many others , like to read code , reading code is very very very slow. Did I just said that I don't like to read code, additionally I don't like to read code. I hate reading code with no comments.
Reading well written code is an important way to make progress, IMHO. http://www.cs.virginia.edu/~evans/cs655/readings/smalltalk.html First principle: << Personal Mastery: If a system is to serve the creative spirit, it must be entirely comprehensible to a single individual. >> Even though Linux is open-source I bet most of us have never read any kernel or system code. In Pharo, everything is easily accessible to a pretty low level - that is really amazing. Using senders, implementers and references to find what you want is a key skill. Of course, not every part of the system is as good an example, or written in such a way that it is easily understood - nor is everything documented. And granted, often it can be hard to get an overview. But we are moving forward in the right direction.
The syntax however is very simple. I also love that the syntax looks nothing like C, even though the vast majority of languages I know and I know most of the popular ones are C based. I never had a problem with the syntax. So I would say that Pharo is by far the type of language I love to read, if we exclude the fact that I don't like to read code and I hate reading uncommented code. So I cannot relate to your students, I don't see how anyone can see Smalltalk as complex at least on a syntax level unless he does not real understand what he learned.
I am here however because I have fallen in love with live coding and the Smalltalk IDE. I was blown away with emacs but one day I asked at #emacs in IRC "hey guys would not be awesome if emacs had GUIs and a full blown language" and the answer I got " try Squeak " , "Oh its a lisp thing" , "No its smalltalk", "what on earth is smalltalk ?" and the rest is history.
I would say that language-wise Smalltalk is by far the easiest language I have learned. But as a coding experience is hard because of lack of documentation, lack of good documentation and lack of libraries. I think however Pharo deserves to be loads more popular, its a very good effort and me and Pharo seem to have the same goals in terms of coding. "Elegance and directness". I don't care so much about "simplicity" because nothing in this world is really simple, not "ease of use" because nothing worth doing is easy to do. For me "elegance" is doing "the complex thing the simplest way possible without compromising" and "directness" means "do it now, zero delays, zero excuses". It seems to me Pharo is build on these ideals and I would be around as long as it follows them.
On Thu, Jun 19, 2014 at 8:52 PM, Dennis Schetinin <chaetal@gmail.com> wrote: As for me, Smalltalk was both really simple and easy at the time I met it many years ago. Maybe that's because I have been experiencing so many problems on the "C++" way and have been looking for solutions⦠and Smalltalk had them all.
But I have been teaching smalltalk for almost ten years by now, and I see that for the most of students (I would say for 90 â 95% of them) Smalltalk is not easy. I don't know why. I wonder why, actually. But that's how it is.
And those who don't understand, who don't "feel" Smalltalk always says "it's too complex". You see, they confuse "it is complex" with "it is hard". And I think I saw exactly the same thing in that Kilon Alios's message. That's why I haven't manage not to answer :)
What I wanted to say is that Smalltalk is really simple: it is based on few essential (and very human) ideas (there could be even fewer though), has a minimalistic syntax (could have even less syntax though I think). Other languages are much more complex. I don't know Python well, but I bet it's much more complex than Smalltalk. But when you do complex things day by day, for many years⦠they become easier. You just don't feel complexity anymore. It's still there, and it still hinders⦠but you don't see that anymore. And by now, any other, even much more simpler tool will be uncomfortable, strange⦠and hard. I think that's why most students do not embrace Smalltalk: it's different, it's unusual, it's strange⦠so I can admit: it's not easy. But please do not say it's complex! :)
I believe these thoughts were inspired by some articles on "easy vs. simple", "simple is objective while easy is subjective" etc. â¦They can be easily googled if need be.
--
Best regards,
Dennis Schetinin
2014-06-19 21:01 GMT+04:00 Nicolas Cellier <nicolas.cellier.aka.nice@gmail.com>:
2014-06-19 16:44 GMT+02:00 Dennis Schetinin <chaetal@gmail.com>:
Simple ~= Easy. Smalltalk is simple (simpler then most of other PLs), but it's not easy (to understand and master, especially after other PLs).
Intersting... I'm certainly too biased after all these years of Smalltalk, but I would have thought the exact contrary... What exactly isn't easy in Smalltalk versus other PL? Is understanding and mastering C++, lisp, haskell, whatever, simpler than Smalltalk? Or do you only mean that difference between any two other languages is less than difference to Smalltalk?
--
Best regards,
Dennis Schetinin
2014-06-17 11:59 GMT+04:00 kilon alios <kilon.alios@gmail.com>: personally I don't like this postcard , it looks too much like "snake oil marketing" to me.
It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis.
Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis.
On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote: Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
2014-06-19 22:21 GMT+02:00 Sven Van Caekenberghe <sven@stfx.eu>:
On 19 Jun 2014, at 21:01, kilon alios <kilon.alios@gmail.com> wrote:
I don't see how something that is simple cannot be easy unless its not really simple.
So far I have not found Pharo simpler to Python. As a coding experience. Maybe if I stay around 10 year I will. I know there are things that Pharo / Smalltalk does better than Python like closure , or concepts associated with functional programming etc. But in the end of the day I don't care about languages that theoretically are great.
I have not yet seen great gains in the language while I code, maybe because in the end of the day I just code in a very simplistic way, I am not a pro coder, I don't have the experience to use complex concepts like an experienced coder would do. I know a few things and that is what I use. But I don't stop learning .
In the end of the day yes I find Smalltalk and Pharo much more difficult to Python because of the lack of documentation. Even books on Smalltalk seem to be decades old. Pharo has zero official reference documentation and I don't , like many others , like to read code , reading code is very very very slow. Did I just said that I don't like to read code, additionally I don't like to read code. I hate reading code with no comments.
Reading well written code is an important way to make progress, IMHO.
http://www.cs.virginia.edu/~evans/cs655/readings/smalltalk.html
First principle: << Personal Mastery: If a system is to serve the creative spirit, it must be entirely comprehensible to a single individual. >>
Even though Linux is open-source I bet most of us have never read any kernel or system code. In Pharo, everything is easily accessible to a pretty low level - that is really amazing.
Using senders, implementers and references to find what you want is a key skill.
Of course, not every part of the system is as good an example, or written in such a way that it is easily understood - nor is everything documented. And granted, often it can be hard to get an overview.
But we are moving forward in the right direction.
Yep, I forgot that I learned with Smalltalk/V and st80... I think I had read all the code base after two or three years, blue book included. Learning with Squeak/Pharo certainly put the hurdle a bit high... I don't think I will ever read the whole... I'd say maybe try and teach with Cuis?
The syntax however is very simple. I also love that the syntax looks nothing like C, even though the vast majority of languages I know and I know most of the popular ones are C based. I never had a problem with the syntax. So I would say that Pharo is by far the type of language I love to read, if we exclude the fact that I don't like to read code and I hate reading uncommented code. So I cannot relate to your students, I don't see how anyone can see Smalltalk as complex at least on a syntax level unless he does not real understand what he learned.
I am here however because I have fallen in love with live coding and the
Smalltalk IDE. I was blown away with emacs but one day I asked at #emacs in IRC "hey guys would not be awesome if emacs had GUIs and a full blown language" and the answer I got " try Squeak " , "Oh its a lisp thing" , "No its smalltalk", "what on earth is smalltalk ?" and the rest is history.
I would say that language-wise Smalltalk is by far the easiest language
I have learned. But as a coding experience is hard because of lack of documentation, lack of good documentation and lack of libraries. I think however Pharo deserves to be loads more popular, its a very good effort and me and Pharo seem to have the same goals in terms of coding. "Elegance and directness". I don't care so much about "simplicity" because nothing in this world is really simple, not "ease of use" because nothing worth doing is easy to do. For me "elegance" is doing "the complex thing the simplest way possible without compromising" and "directness" means "do it now, zero delays, zero excuses". It seems to me Pharo is build on these ideals and I would be around as long as it follows them.
On Thu, Jun 19, 2014 at 8:52 PM, Dennis Schetinin <chaetal@gmail.com>
wrote:
As for me, Smalltalk was both really simple and easy at the time I met it many years ago. Maybe that's because I have been experiencing so many problems on the "C++" way and have been looking for solutions⦠and Smalltalk had them all.
But I have been teaching smalltalk for almost ten years by now, and I see that for the most of students (I would say for 90 â 95% of them) Smalltalk is not easy. I don't know why. I wonder why, actually. But that's how it is.
And those who don't understand, who don't "feel" Smalltalk always says "it's too complex". You see, they confuse "it is complex" with "it is hard". And I think I saw exactly the same thing in that Kilon Alios's message. That's why I haven't manage not to answer :)
What I wanted to say is that Smalltalk is really simple: it is based on few essential (and very human) ideas (there could be even fewer though), has a minimalistic syntax (could have even less syntax though I think). Other languages are much more complex. I don't know Python well, but I bet it's much more complex than Smalltalk. But when you do complex things day by day, for many years⦠they become easier. You just don't feel complexity anymore. It's still there, and it still hinders⦠but you don't see that anymore. And by now, any other, even much more simpler tool will be uncomfortable, strange⦠and hard. I think that's why most students do not embrace Smalltalk: it's different, it's unusual, it's strange⦠so I can admit: it's not easy. But please do not say it's complex! :)
I believe these thoughts were inspired by some articles on "easy vs. simple", "simple is objective while easy is subjective" etc. â¦They can be easily googled if need be.
--
Best regards,
Dennis Schetinin
2014-06-19 21:01 GMT+04:00 Nicolas Cellier < nicolas.cellier.aka.nice@gmail.com>:
2014-06-19 16:44 GMT+02:00 Dennis Schetinin <chaetal@gmail.com>:
Simple ~= Easy. Smalltalk is simple (simpler then most of other PLs), but it's not easy (to understand and master, especially after other PLs).
Intersting... I'm certainly too biased after all these years of Smalltalk, but I would have thought the exact contrary... What exactly isn't easy in Smalltalk versus other PL? Is understanding and mastering C++, lisp, haskell, whatever, simpler than Smalltalk? Or do you only mean that difference between any two other languages is less than difference to Smalltalk?
--
Best regards,
Dennis Schetinin
2014-06-17 11:59 GMT+04:00 kilon alios <kilon.alios@gmail.com>: personally I don't like this postcard , it looks too much like "snake oil marketing" to me.
It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis.
Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis.
On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote: Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph
Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard.
It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real
postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was
there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
On Thu, Jun 19, 2014 at 1:37 PM, Nicolas Cellier < nicolas.cellier.aka.nice@gmail.com> wrote:
2014-06-19 22:21 GMT+02:00 Sven Van Caekenberghe <sven@stfx.eu>:
On 19 Jun 2014, at 21:01, kilon alios <kilon.alios@gmail.com> wrote:
I don't see how something that is simple cannot be easy unless its not really simple.
So far I have not found Pharo simpler to Python. As a coding experience. Maybe if I stay around 10 year I will. I know there are things that Pharo / Smalltalk does better than Python like closure , or concepts associated with functional programming etc. But in the end of the day I don't care about languages that theoretically are great.
I have not yet seen great gains in the language while I code, maybe because in the end of the day I just code in a very simplistic way, I am not a pro coder, I don't have the experience to use complex concepts like an experienced coder would do. I know a few things and that is what I use. But I don't stop learning .
In the end of the day yes I find Smalltalk and Pharo much more difficult to Python because of the lack of documentation. Even books on Smalltalk seem to be decades old. Pharo has zero official reference documentation and I don't , like many others , like to read code , reading code is very very very slow. Did I just said that I don't like to read code, additionally I don't like to read code. I hate reading code with no comments.
Great first part of your comment Kilon. Yes, the language is far simpler, but the libraries, oh the libraries, and the doc. But doc is not necessarily the problem. Examples can be good. There needs to be lots of effort put into tutorials, examples, etc. But I have to say that reading code can be a joy, and really educational, even if with no comments, _provided_ it is well-written. That's one of the things that's really special about SMalltalk, support for reading, both in the syntax and in the tools (senders, implementors, class comments). Get over your antipathy and read as much as you can. Its a good route to mastery.
Reading well written code is an important way to make progress, IMHO.
+1
http://www.cs.virginia.edu/~evans/cs655/readings/smalltalk.html
First principle: << Personal Mastery: If a system is to serve the creative spirit, it must be entirely comprehensible to a single individual.
Even though Linux is open-source I bet most of us have never read any kernel or system code. In Pharo, everything is easily accessible to a pretty low level - that is really amazing.
Using senders, implementers and references to find what you want is a key skill.
Of course, not every part of the system is as good an example, or written in such a way that it is easily understood - nor is everything documented. And granted, often it can be hard to get an overview.
But we are moving forward in the right direction.
Yep, I forgot that I learned with Smalltalk/V and st80... I think I had read all the code base after two or three years, blue book included. Learning with Squeak/Pharo certainly put the hurdle a bit high... I don't think I will ever read the whole... I'd say maybe try and teach with Cuis?
Good idea. Learning with Smalltalk-80 V2 was such a joy. You could read and understand everything. It led to a feeling of mastery. Being able to hack the compiler, modify tools, etc. Lovely. Small is beautiful.
The syntax however is very simple. I also love that the syntax looks
nothing like C, even though the vast majority of languages I know and I know most of the popular ones are C based. I never had a problem with the syntax. So I would say that Pharo is by far the type of language I love to read, if we exclude the fact that I don't like to read code and I hate reading uncommented code. So I cannot relate to your students, I don't see how anyone can see Smalltalk as complex at least on a syntax level unless he does not real understand what he learned.
I am here however because I have fallen in love with live coding and
the Smalltalk IDE. I was blown away with emacs but one day I asked at #emacs in IRC "hey guys would not be awesome if emacs had GUIs and a full blown language" and the answer I got " try Squeak " , "Oh its a lisp thing" , "No its smalltalk", "what on earth is smalltalk ?" and the rest is history.
I would say that language-wise Smalltalk is by far the easiest language
I have learned. But as a coding experience is hard because of lack of documentation, lack of good documentation and lack of libraries. I think however Pharo deserves to be loads more popular, its a very good effort and me and Pharo seem to have the same goals in terms of coding. "Elegance and directness". I don't care so much about "simplicity" because nothing in this world is really simple, not "ease of use" because nothing worth doing is easy to do. For me "elegance" is doing "the complex thing the simplest way possible without compromising" and "directness" means "do it now, zero delays, zero excuses". It seems to me Pharo is build on these ideals and I would be around as long as it follows them.
On Thu, Jun 19, 2014 at 8:52 PM, Dennis Schetinin <chaetal@gmail.com>
wrote:
As for me, Smalltalk was both really simple and easy at the time I met it many years ago. Maybe that's because I have been experiencing so many problems on the "C++" way and have been looking for solutions⦠and Smalltalk had them all.
But I have been teaching smalltalk for almost ten years by now, and I see that for the most of students (I would say for 90 â 95% of them) Smalltalk is not easy. I don't know why. I wonder why, actually. But that's how it is.
And those who don't understand, who don't "feel" Smalltalk always says "it's too complex". You see, they confuse "it is complex" with "it is hard". And I think I saw exactly the same thing in that Kilon Alios's message. That's why I haven't manage not to answer :)
What I wanted to say is that Smalltalk is really simple: it is based on few essential (and very human) ideas (there could be even fewer though), has a minimalistic syntax (could have even less syntax though I think). Other languages are much more complex. I don't know Python well, but I bet it's much more complex than Smalltalk. But when you do complex things day by day, for many years⦠they become easier. You just don't feel complexity anymore. It's still there, and it still hinders⦠but you don't see that anymore. And by now, any other, even much more simpler tool will be uncomfortable, strange⦠and hard. I think that's why most students do not embrace Smalltalk: it's different, it's unusual, it's strange⦠so I can admit: it's not easy. But please do not say it's complex! :)
I believe these thoughts were inspired by some articles on "easy vs. simple", "simple is objective while easy is subjective" etc. â¦They can be easily googled if need be.
--
Best regards,
Dennis Schetinin
2014-06-19 21:01 GMT+04:00 Nicolas Cellier < nicolas.cellier.aka.nice@gmail.com>:
2014-06-19 16:44 GMT+02:00 Dennis Schetinin <chaetal@gmail.com>:
Simple ~= Easy. Smalltalk is simple (simpler then most of other PLs), but it's not easy (to understand and master, especially after other PLs).
Intersting... I'm certainly too biased after all these years of Smalltalk, but I would have thought the exact contrary... What exactly isn't easy in Smalltalk versus other PL? Is understanding and mastering C++, lisp, haskell, whatever, simpler than Smalltalk? Or do you only mean that difference between any two other languages is less than difference to Smalltalk?
--
Best regards,
Dennis Schetinin
2014-06-17 11:59 GMT+04:00 kilon alios <kilon.alios@gmail.com>: personally I don't like this postcard , it looks too much like "snake oil marketing" to me.
It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis.
Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis.
On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote: Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph
Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard.
It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real
postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was
there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
-- best, Eliot
I am not debating well written code. Readable code must always be the No 1 priority . The questions is can you really rely on it ? Because in the end design decisions will be made , or people will not agree on what "beautiful code" really is. So I think aim for beautiful code, expect ugly code, be realistic. Or as they say "have head in the cloud and feet on the ground". I am also not debating the beauty of Smalltalk and Lisp. There is a reason so many things are copied from these languages. Objective C and Ruby state that are based on Smalltalk , so I definitely respect and appreciate what a simple syntax can do for a flexible expression of a coder. All I am saying is that people may dislike Smalltalk for things unrelated to the design of the code and the nature of the language. For me its documentation, for others may be other things. Its not as simple as simple syntax ;) On Fri, Jun 20, 2014 at 12:02 AM, Eliot Miranda <eliot.miranda@gmail.com> wrote:
On Thu, Jun 19, 2014 at 1:37 PM, Nicolas Cellier < nicolas.cellier.aka.nice@gmail.com> wrote:
2014-06-19 22:21 GMT+02:00 Sven Van Caekenberghe <sven@stfx.eu>:
On 19 Jun 2014, at 21:01, kilon alios <kilon.alios@gmail.com> wrote:
I don't see how something that is simple cannot be easy unless its not really simple.
So far I have not found Pharo simpler to Python. As a coding experience. Maybe if I stay around 10 year I will. I know there are things that Pharo / Smalltalk does better than Python like closure , or concepts associated with functional programming etc. But in the end of the day I don't care about languages that theoretically are great.
I have not yet seen great gains in the language while I code, maybe because in the end of the day I just code in a very simplistic way, I am not a pro coder, I don't have the experience to use complex concepts like an experienced coder would do. I know a few things and that is what I use. But I don't stop learning .
In the end of the day yes I find Smalltalk and Pharo much more difficult to Python because of the lack of documentation. Even books on Smalltalk seem to be decades old. Pharo has zero official reference documentation and I don't , like many others , like to read code , reading code is very very very slow. Did I just said that I don't like to read code, additionally I don't like to read code. I hate reading code with no comments.
Great first part of your comment Kilon. Yes, the language is far simpler, but the libraries, oh the libraries, and the doc. But doc is not necessarily the problem. Examples can be good. There needs to be lots of effort put into tutorials, examples, etc.
But I have to say that reading code can be a joy, and really educational, even if with no comments, _provided_ it is well-written. That's one of the things that's really special about SMalltalk, support for reading, both in the syntax and in the tools (senders, implementors, class comments). Get over your antipathy and read as much as you can. Its a good route to mastery.
Reading well written code is an important way to make progress, IMHO.
+1
http://www.cs.virginia.edu/~evans/cs655/readings/smalltalk.html
First principle: << Personal Mastery: If a system is to serve the creative spirit, it must be entirely comprehensible to a single individual.
Even though Linux is open-source I bet most of us have never read any kernel or system code. In Pharo, everything is easily accessible to a pretty low level - that is really amazing.
Using senders, implementers and references to find what you want is a key skill.
Of course, not every part of the system is as good an example, or written in such a way that it is easily understood - nor is everything documented. And granted, often it can be hard to get an overview.
But we are moving forward in the right direction.
Yep, I forgot that I learned with Smalltalk/V and st80... I think I had read all the code base after two or three years, blue book included. Learning with Squeak/Pharo certainly put the hurdle a bit high... I don't think I will ever read the whole... I'd say maybe try and teach with Cuis?
Good idea. Learning with Smalltalk-80 V2 was such a joy. You could read and understand everything. It led to a feeling of mastery. Being able to hack the compiler, modify tools, etc. Lovely. Small is beautiful.
The syntax however is very simple. I also love that the syntax looks
nothing like C, even though the vast majority of languages I know and I know most of the popular ones are C based. I never had a problem with the syntax. So I would say that Pharo is by far the type of language I love to read, if we exclude the fact that I don't like to read code and I hate reading uncommented code. So I cannot relate to your students, I don't see how anyone can see Smalltalk as complex at least on a syntax level unless he does not real understand what he learned.
I am here however because I have fallen in love with live coding and
the Smalltalk IDE. I was blown away with emacs but one day I asked at #emacs in IRC "hey guys would not be awesome if emacs had GUIs and a full blown language" and the answer I got " try Squeak " , "Oh its a lisp thing" , "No its smalltalk", "what on earth is smalltalk ?" and the rest is history.
I would say that language-wise Smalltalk is by far the easiest
language I have learned. But as a coding experience is hard because of lack of documentation, lack of good documentation and lack of libraries. I think however Pharo deserves to be loads more popular, its a very good effort and me and Pharo seem to have the same goals in terms of coding. "Elegance and directness". I don't care so much about "simplicity" because nothing in this world is really simple, not "ease of use" because nothing worth doing is easy to do. For me "elegance" is doing "the complex thing the simplest way possible without compromising" and "directness" means "do it now, zero delays, zero excuses". It seems to me Pharo is build on these ideals and I would be around as long as it follows them.
On Thu, Jun 19, 2014 at 8:52 PM, Dennis Schetinin <chaetal@gmail.com>
wrote:
As for me, Smalltalk was both really simple and easy at the time I met it many years ago. Maybe that's because I have been experiencing so many problems on the "C++" way and have been looking for solutions⦠and Smalltalk had them all.
But I have been teaching smalltalk for almost ten years by now, and I see that for the most of students (I would say for 90 â 95% of them) Smalltalk is not easy. I don't know why. I wonder why, actually. But that's how it is.
And those who don't understand, who don't "feel" Smalltalk always says "it's too complex". You see, they confuse "it is complex" with "it is hard". And I think I saw exactly the same thing in that Kilon Alios's message. That's why I haven't manage not to answer :)
What I wanted to say is that Smalltalk is really simple: it is based on few essential (and very human) ideas (there could be even fewer though), has a minimalistic syntax (could have even less syntax though I think). Other languages are much more complex. I don't know Python well, but I bet it's much more complex than Smalltalk. But when you do complex things day by day, for many years⦠they become easier. You just don't feel complexity anymore. It's still there, and it still hinders⦠but you don't see that anymore. And by now, any other, even much more simpler tool will be uncomfortable, strange⦠and hard. I think that's why most students do not embrace Smalltalk: it's different, it's unusual, it's strange⦠so I can admit: it's not easy. But please do not say it's complex! :)
I believe these thoughts were inspired by some articles on "easy vs. simple", "simple is objective while easy is subjective" etc. â¦They can be easily googled if need be.
--
Best regards,
Dennis Schetinin
2014-06-19 21:01 GMT+04:00 Nicolas Cellier < nicolas.cellier.aka.nice@gmail.com>:
2014-06-19 16:44 GMT+02:00 Dennis Schetinin <chaetal@gmail.com>:
Simple ~= Easy. Smalltalk is simple (simpler then most of other PLs), but it's not easy (to understand and master, especially after other PLs).
Intersting... I'm certainly too biased after all these years of Smalltalk, but I would have thought the exact contrary... What exactly isn't easy in Smalltalk versus other PL? Is understanding and mastering C++, lisp, haskell, whatever, simpler than Smalltalk? Or do you only mean that difference between any two other languages is less than difference to Smalltalk?
--
Best regards,
Dennis Schetinin
2014-06-17 11:59 GMT+04:00 kilon alios <kilon.alios@gmail.com>: personally I don't like this postcard , it looks too much like "snake oil marketing" to me.
It creates the illusion that Pharo is much simpler than other programming languages as a programming language while nothing can be further from the truth. The idea here is to prove to the viewer that Pharo is based on a very simple recipe and that is of course true. But if we have to be honest is should come with a disclaimer for the potential users that Pharo is no blue pill and there tons of things outside this postcard you need to learn if you want to create the simplest Pharo application. I will be frank , as a language I dont find Pharo any simpler than let's say python , which I am more familiar with. And the fact that there is this simple recipe gave me zero benefits to me so far. Its a cool trick that may come handy down the line if I want to shape the language more to my needs, but I dont see doing this to a day by day basis.
Now a "living coding postcard" stating the workflow of Pharo and demonstrating the power of the debugger is much more honest and frankly better marketing for Pharo. You show something to a person that will benefit his workflow on a day by day basis.
On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote: Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
exampleWithNumber: x | y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph
Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com>
wrote:
I guess itâs here:
http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a
postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real
postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was
there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
-- best, Eliot
kilon alios wrote
Pharo has zero official reference documentation
Well Pharo By Example and Deep into Pharo are close. IMHO, we've chosen to pour as many of our limited resources as possible into shrinking and redesigning the system into something one person can master, rather than thoroughly document things that may soon change drastically or disappear. Real BDD (Behavior Driven Design i.e. tests from the perspective of the user of the library) would help here as the tests would provide documentation for free. But BDD doesn't seem to have caught on in the Smalltalk world, and I find many (most?) tests to be useless from a "how does this library work" perspective. Also, when the system stabilizes and we start documentation "for real", the fun part will be active essays; traditional paper-like documentation is the kind of thing Smalltalk was invented to replace. ----- Cheers, Sean -- View this message in context: http://forum.world.st/Where-is-the-postcard-with-syntax-tp4763281p4764026.ht... Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
(Another topic I can't miss:) That's I've tried to explain during ESUG 2011: classic + mockist TDD (which is very similar if not identical to BDD) provides a lot of benefits including solid process, flexible design⦠and free documentation of course. "Seamless" TDD is really cheap and very efficient in Smalltalk (compared to other development environments, like Java/C# at least), but it still has zero adoption in Smalltalk community, unfortunately. -- Best regards, Dennis Schetinin 2014-06-21 2:09 GMT+04:00 Sean P. DeNigris <sean@clipperadams.com>:
kilon alios wrote
Pharo has zero official reference documentation
Well Pharo By Example and Deep into Pharo are close. IMHO, we've chosen to pour as many of our limited resources as possible into shrinking and redesigning the system into something one person can master, rather than thoroughly document things that may soon change drastically or disappear. Real BDD (Behavior Driven Design i.e. tests from the perspective of the user of the library) would help here as the tests would provide documentation for free. But BDD doesn't seem to have caught on in the Smalltalk world, and I find many (most?) tests to be useless from a "how does this library work" perspective. Also, when the system stabilizes and we start documentation "for real", the fun part will be active essays; traditional paper-like documentation is the kind of thing Smalltalk was invented to replace.
----- Cheers, Sean -- View this message in context: http://forum.world.st/Where-is-the-postcard-with-syntax-tp4763281p4764026.ht... Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
On Tue, Jun 17, 2014 at 9:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Now, who is creative enough to add "dynamic array" (one with curly braces) and temporaries in a block to the original thing:
the postcard on our Pharo slides has a bit more (see slide 34): http://www.slideshare.net/pharoproject/pharo-tutorial-at-ecooptutorial -- Damien Cassou http://damiencassou.seasidehosting.st "Success is the ability to go from one failure to another without losing enthusiasm." Winston Churchill
On 17 Jun 2014, at 10:07, Damien Cassou <damien.cassou@gmail.com> wrote:
On Tue, Jun 17, 2014 at 9:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Now, who is creative enough to add "dynamic array" (one with curly braces) and temporaries in a block to the original thing:
the postcard on our Pharo slides has a bit more (see slide 34): http://www.slideshare.net/pharoproject/pharo-tutorial-at-ecooptutorial
Nice, havenât seen that
-- Damien Cassou http://damiencassou.seasidehosting.st
"Success is the ability to go from one failure to another without losing enthusiasm." Winston Churchill
2014-06-17 10:07 GMT+02:00 Damien Cassou <damien.cassou@gmail.com>:
On Tue, Jun 17, 2014 at 9:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Now, who is creative enough to add "dynamic array" (one with curly braces) and temporaries in a block to the original thing:
the postcard on our Pharo slides has a bit more (see slide 34): http://www.slideshare.net/pharoproject/pharo-tutorial-at-ecooptutorial
Why are there different single quote characters? (`a´ in the literal array and ` ` by the Trascript show)
-- Damien Cassou http://damiencassou.seasidehosting.st
"Success is the ability to go from one failure to another without losing enthusiasm." Winston Churchill
On Tue, Jun 17, 2014 at 10:55 AM, Nicolai Hess <nicolaihess@web.de> wrote:
Why are there different single quote characters?
(`a´ in the literal array and ` ` by the Trascript show)
bug in the slide, thank you :-) -- Damien Cassou http://damiencassou.seasidehosting.st "Success is the ability to go from one failure to another without losing enthusiasm." Winston Churchill
I think that this is an issue of auto changing quotes to open and close. And something was just copied :) On 17 Jun 2014, at 10:55, Nicolai Hess <nicolaihess@web.de> wrote:
2014-06-17 10:07 GMT+02:00 Damien Cassou <damien.cassou@gmail.com>: On Tue, Jun 17, 2014 at 9:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Now, who is creative enough to add "dynamic array" (one with curly braces) and temporaries in a block to the original thing:
the postcard on our Pharo slides has a bit more (see slide 34): http://www.slideshare.net/pharoproject/pharo-tutorial-at-ecooptutorial
Why are there different single quote characters?
(`a´ in the literal array and ` ` by the Trascript show)
-- Damien Cassou http://damiencassou.seasidehosting.st
"Success is the ability to go from one failure to another without losing enthusiasm." Winston Churchill
On Tue, Jun 17, 2014 at 12:32 AM, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Now, who is creative enough to add âdynamic arrayâ (one with curly braces) and temporaries in a block to the original thing:
Don't forget a block array literal, a pragma, a long binary selector and thisContext. Personally I don't like "(each class name)". It implies one always has to parenthesize unary message sequences. The first isn't so good either since it isn't necessary. Why not true & (false not & nil isNil) ? exampleWithNumber: x
| y | true & false not & (nil isNil) ifFalse: [self halt]. y := self size + super size. #($a #a "a" 1 1.0) do: [ :each | Transcript show: (each class name); show: ' ']. ^x < y
Uko
On 16 Jun 2014, at 15:35, Oscar Nierstrasz <oscar.nierstrasz@gmail.com> wrote:
I got it from Stef, who always said it came originally from Ralph Johnson.
http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
Googling around finds various copies of this, but no original source.
Oscar
On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
I guess itâs here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
I think that it would be interesting to put the syntax on a postcard. It can work as a proof of concept, some addition cheat-sheet for newcomers and also as some king of souvenir.
Uko
On 16 Jun 2014, at 10:36, stepharo <stepharo@free.fr> wrote:
you have the flyer of Damien (no idea where it is) but no real postcard.
Stef
On 16/6/14 09:35, Yuriy Tymchuk wrote:
Hi guys,
we all are talking about the syntax fitting in a postcard, but was there any real postcard with Pharo syntax prototype? This would be really interesting.
Uko
-- best, Eliot
participants (12)
-
Damien Cassou -
Dennis Schetinin -
Eliot Miranda -
kilon alios -
Nicolai Hess -
Nicolas Cellier -
Oscar Nierstrasz -
phil@highoctane.be -
Sean P. DeNigris -
stepharo -
Sven Van Caekenberghe -
Yuriy Tymchuk