Live data from Hacker News

Pharo, the Modern Smalltalk

medium.com

11–20 of 178 posts

Re: Pharo, the Modern Smalltalk

#12
Okay, so lot's of praise for a language. But I have three questions that aren't answered by the article:

1.) How fast are programs written in Pharao?

2.) Is it possible to write complete and halfway modern looking desktop end-consumer GUI applications in Pharao?

3.) How good is it at parallel programming (i.e. multicore support, not just concurrency with green threads)?

I'm always interested in learning a new language, if not just for fun. Currently my new language on the Todo list is Nim. However, I do not want to take a look at a language for which the answer to all of the above questions is "Meh".

Re: Pharo, the Modern Smalltalk

#13

Is there a snippet of example code to look at? I browsed the pharo.org website, but couldn't find an example to give me a taste. I even tried googling "pharo example" and with a brief look at the results didn't find an example. Today, there are hundreds of programming languages competing for attention. It is in your interest to put an example front and center of why one should spend time looking into yet another prog…

You can download whole books with Pharo examples http://files.pharo.org/books/

Maybe a whole book is overkill. When I'm checking out a new language I like to see a couple of short, accessible examples to get a feel for the language.

Like this clock[0]:

  Time now asValueHolder in: [ :clock |
    [ [ 
        1 second asDelay wait. 
        clock value: Time now ] repeat ] fork. 
    clock inspect ]
[0] https://medium.com/concerning-pharo/elegant-pharo-code-bb590...

Re: Pharo, the Modern Smalltalk

#14
post #9

My beef with Smalltalk is that it's far too much a world onto itself for my taste. Java is already a bad enough citizen of Unix but Smalltalk takes it to a new level. If Lisp and Scheme can integrate well into Unix, why can't Smalltalk?

Try GNU smalltalk if you want it "integrated" into linux: http://smalltalk.gnu.org/

However, you completely miss the point of smalltalk by doing this.

Re: Pharo, the Modern Smalltalk

#15
post #9

My beef with Smalltalk is that it's far too much a world onto itself for my taste. Java is already a bad enough citizen of Unix but Smalltalk takes it to a new level. If Lisp and Scheme can integrate well into Unix, why can't Smalltalk?

Coming from a place of ignorance, how does Smalltalk not integrate?

The default mode of interaction with Pharo and most other Smalltalk-based systems is not "launch an application which interacts on the console or opens some windows", but rather "launch Pharo, then inside the big Pharo window launch an application which interacts on the Pharo console or opens some windows inside the big Pharo window".

I think there are ways around this, but you may have to dig deep to find out how.

GNU Smalltalk is different: It doesn't have this traditional interaction mode. Many Smalltalk fans will probably find that that's a disadvantage.

Re: Pharo, the Modern Smalltalk

#16
post #9

My beef with Smalltalk is that it's far too much a world onto itself for my taste. Java is already a bad enough citizen of Unix but Smalltalk takes it to a new level. If Lisp and Scheme can integrate well into Unix, why can't Smalltalk?

Coming from a place of ignorance, how does Smalltalk not integrate?

A Smalltalk environment is practically its own operating system, complete with its own isolated UI/window manager, shells and desktop environment.

Re: Pharo, the Modern Smalltalk

#17

Okay, so lot's of praise for a language. But I have three questions that aren't answered by the article: 1.) How fast are programs written in Pharao? 2.) Is it possible to write complete and halfway modern looking desktop end-consumer GUI applications in Pharao? 3.) How good is it at parallel programming (i.e. multicore support, not just concurrency with green threads)? I'm always interested in learning a new languag…

1) Last time I tried it was reasonably fast for a dynamic language - somewhat slower than javascript (V8) but faster than python (cpython) to give you a ballpark

2) Yes, but ou will not use native widgets. The way you write applications is: you write code by modifying the behaviour of objects in the Pharo application (which is your editor, debugger, GUI, version control system and so on), then you strip off the parts you don't need (such as what you used to write the application in the first place). Hence you will probably use the default Pharo widget system (take a look at some Pharo screenshots to get an idea)

3) Last time I checked it was planned, but there was nothing yet

Re: Pharo, the Modern Smalltalk

#18

Earlier quoted context omitted.

Coming from a place of ignorance, how does Smalltalk not integrate?

A Smalltalk environment is practically its own operating system, complete with its own isolated UI/window manager, shells and desktop environment.

GNU Smalltalk is file based and integrates with Emacas...oh, nevermind.

Re: Pharo, the Modern Smalltalk

#19
post #2

There's a Mooc starting in december by the INRIA ( French Institute for Research in Computer Science and Automation ) https://www.fun-mooc.fr/courses/course-v1:inria+41010+sessio...

Oddly, I'm more fascinated that I'll be able to learn French reading through the materials of that course. Perhaps Smalltalk will follow on the side :)

Re: Pharo, the Modern Smalltalk

#20
post #9

My beef with Smalltalk is that it's far too much a world onto itself for my taste. Java is already a bad enough citizen of Unix but Smalltalk takes it to a new level. If Lisp and Scheme can integrate well into Unix, why can't Smalltalk?

Lisp and Scheme don't actually integrate with UNIX.

Their UNIX versions are handicapped versions of themselves.

Languages with rich runtimes and developer tooling are always shoehorned into POSIX model to "feel UNIX".

Post reply on HN