Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Best way to learn Smalltalk?
14 points by avindroth 10 days ago | hide | past | favorite | 13 comments
I have been going through SICP to learn lisp, and am wishing a similar path for smalltalk/pharo. Any suggestions?





Even though Pharo has evolved a lot from the original smalltalk, the main ideas remain the same. And nowadays the most active development is done by the pharo team. They not only build the software but also tons of high quality content.

I recommend starting with the Pharo Mooc. [1] And then deep dive on their books [2].

From there you can read old classic smalltalk books, such as Kent Back's "Smalltalk Best Practices" and Chamond Liu'a "Smalltalk, Object and Design".

[1] https://mooc.pharo.org [2] https://books.pharo.org


Additionally,the original Smalltalk "Blue Book" ("Smalltalk-80: The Language and its Implementation") is well written and can be a good introduction.

http://stephane.ducasse.free.fr/FreeBooks/BlueBook/Bluebook....


If I wanted to try out examples in the book, can I try in the Pharo environment?

Pharo has some new syntactic additions. Cuis smalltalk is closer to Smalltalk-80, if that's what you're looking for.

and of course, joining our discord server (invite at: http://pharo.org/community) is the best way to get help and guidance in fast way, we have several channel dedicated to help newbies :)

I tried Squeak a few years ago (on a Mac). It was remarkably painless to get going, instant really. Suddenly you are in a different world.. Highly recommended.

https://squeak.org/


Smalltalk people often hate on it, but I found gnu_smalltalk useful simply because I didn't have to navigate around entirely new tooling to play around with Smalltalk. And I played around with the Koans, https://github.com/sl4m/gnu_smalltalk_koans

For what it is worth, a lot of Smalltalk is captured by Ruby. Like the ability to add methods to integers.


I tried GNU-Smalltalk before Pharo. The only issue for me was that I couldn't get its class browser working under any of the Debian-based linux distros I tried.

I couldn't either. Ultimately it fell in the no-new-tooling-to-navigate feature for me.

It was ok because I wasn’t trying to use it in anger. Just very simple stuff where looking at the source was good enough.


What are some benefits of learning small talk

Ive not looked at it in a long time - but one of the reasons for learning smalltalk was that everything is an object which made it a great language to learn OO

I think Python is better alternative.

Lots of objects there as well and it's super practical.

Not sure about Smalltalk besides amusing friends during a beer


For learning, traditional smalltalk environments (with a gui browser) are vastly superior. Everything is live, so the learner can witness the immediate propagation of changes made and follow them through as deep as desired through the debugger.



Applications are open for YC Winter 2022

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: