Skip to content
0:00 / 0:00

#pharo#smalltalk#ruby

7 minutes of Pharo Smalltalk for Rubyists

Avdi Grimm

848 subscribers • 1 video on Hallway

YouTube
  • Recommended by 5 people: 5 on Hacker News.
  • A classic. People kept recommending it from 2020 to 2026.
  • Presented by Avdi Grimm, author and Ruby developer

Intermediate. Assumes working knowledge.

36K views11 years ago5 recommendations

Programming languagesTools and practiceObject-oriented designTestingVim, Emacs and editors

Avdi Grimm demonstrates the unique live-coding environment, search-by-example, and development tools of Pharo Smalltalk from a Rubyist's perspective.

In this tiny taste of Pharo Smalltalk, I focus on some of the novel development aids on offer. See associated blog post: devblog.avdi.org/2015/05/11/in-which-i-make-you-hate-ruby-in…

Why it's here

5 people recommend this

What people say. Highly recommended for Ruby developers to understand the power of Smalltalk's live development environment and how it inspired Ruby.

web3-is-a-scamon Hacker News • Recommends

On “Pharo 11”

As a rails developer - my introduction to Pharo started with this video: link to this video If you're not a ruby/rails developer you can still see how awesome it is, but for rubyists specifically it can really be quite mind blowing.

throwatdem12311on Hacker News • Recommends

On “Squeak/Smalltalk 6.1 Release Notes”

As a Ruby developer this video about Pharo smalltalk made me a smalltalk believer — not surprising because Ruby was heavily inspired by smalltalk. link to this video

mikelevinson Hacker News • Recommends

On “Ask HN: Production Lisp in 2020?”

There's this recent video showing a little of what the Pharo Smalltalk environment is like: link to this video The video was made by a Ruby programmer, rather than an experience Smalltalker, so it's more a newbie showing you cool things he's discovered, rather than an expert showing the power of the system. On the other hand, there's this one: link That one is an expert, Kalman Reti, showing some of what it's like to work with a Symbolics Lisp Machine. (It's not a real Lisp machine; they're all at least thirty years old now; this is an emulator running the old Symbolics OS on Linux). Go to YouTube and search for Rainer Joswig and you'll find a few video demos of Lisp Machines and MCL and so forth. Fi…

mikelevinson Hacker News • Recommends

On “On Repl-Driven Programming”

…environment: link Rainer Joswig (lispm here on HN) showing us a little bit of repl and Zmacs interaction on a Symbolics Lisp Machine: link Rainer again, showing some simple interactions with Macintosh Common Lisp, which was my daily driver for years: link Ruby programmer Avdi Grimm shows some things that he found cool about Pharo Smalltalk: link to this video Dan Ingalls (one of the original authors of Smalltalk) in a 2017 demo of Smalltalk 76: link There are some other things I'd like to find for lists like this, but haven't been able to. In particular, a good demo of Apple's SK8 would be great. If you can imagine a full-color Hypercard that could crack open and reprogram absolutely everythin…

Qemon Hacker News • Recommends

On “Ask HN: Choosing a language to learn for the heck of it”

You're welcome. To illustrate what the Pharo environment looks like, I'd also recommend this short 7 min video by Avdi Grimm: link to this video

Qemon Hacker News • Recommends

On “Functional programming patterns in Smalltalk”

I think the most distinguishing feature is the superb environment and tooling that is a integral part of the language, by default, in most Smalltalk dialects. The tooling is so seamless integrated, that you're nudged towards simply code inside the debugger. Things like search method by example feel like a superpower. See link to this video If you're interested in experience what a modern Smalltalk looks like, I strongly recommend the Pharo programming MOOC. It was a eye opener for me: link

Qemon Hacker News • Recommends

On “Programming languages with small surface area”

…he whole syntax fits on it. See link I think this postcard remark may be a bit misleading sometimes, as in practice the complexity is shifted from syntax to the large class library in the system image, that packs a lot of functionality. But yet the environment is sweet and has great discoverability, with functionality like search by example. See link to this video The Smalltalk flavor I strongly recommend is Pharo. There's a MOOC1 on it, and there are several free books that cover the basics of the language itself23, data visualisation4 and numeric stuff5. 1. link 2. link ... 3. link 4. link 5. link…

sebastianconcpton Hacker News • Recommends

On “Smalltalk simplicity and consistency vs. other languages (2022) [video]”

MountainWest RubyConf 2014 - But Really, You Should Learn Smalltalk - link 7 minutes of Pharo Smalltalk for Rubyists - link to this video

u/AisRauliin r/haskell • Mentions

Anything like find-by-example from Pharo Smalltalk in Haskell? Just watched 7 minutes of Pharo Smalltalk for Rubyists and thought that Haskell obviously should have something like it (If it already does it should be advertised a bit better). Also, Hoogle is great and would greatly benefit from something like this integrated into it (alongside Djinn).

u/jacksonbenetein r/elixir • Mentions

On “Other Well-Documented Languages like Elixir?”

As other user said, Racket have a nice documentation, although I myself think that sometimes it lacks examples (especially in third party modules). This kind of question can be quite subjective though... Personally, I think that the best documented language I've encountered up to date is Elisp, and maybe Common Lisp if you're using Slime. But maybe that's an unfair comparison, that's because the nice documentation feature of Elisp relies on Emacs usage, and Common Lisp relies on Slime, without the proper "IDE", maybe documentation could not be considered that good. Erlang have a nice documentation IMO, but for some complex things I think it lacks examples as well. I feel that you have to r…

bencoman71on Hacker News • Mentions

On “Can This Man Spark a Renaissance for the Smalltalk Programming Language?”

> * Tests are now common and considered a good thing. A new contributor can write code without worrying about breaking rarely-used functionality. btw, xUnit testing originated with Smalltalk. link > * Many languages have package managers. Using latest third-party library is now simple Metacello is Pharo's tool for defining dependencies between libraries 12. 1 link 2 link > * We have great deployment mechanisms -- one-command deployments are common, containers and version pinning help reproducibility. Pharo Catalog provides a GUI one click installer of Metacello configurations link You can also load Metacello configurations from the command line per last snippet of 1 Metacel…

noblethrasheron Hacker News • Mentions

On “Video editing with Python”

I don't agree with 'ageofwant’s prediction (though I really wish that I could), but command discovery is a solved problem: Pharo Smalltalk has a nifty feature whereby you can find methods by example1. E.g. typing 'hello, world', 'HELLO, WORLD' in the finder returns the method `asUppercase` on the String class. In a statically-typed language, you can just search by function signature (e.g. Clip -> RotatedClip (an effect) or Clip -> Time -> Clip * Clip (a cut)). 1 link to this video

ben-comanon Hacker News • Mentions

On “Pharo MOOC”

Rubyists might know of Ruby books written by Avdi Grimm, who recorded his early experience with Pharo... link to this video

elliotlarsonon Hacker News • Mentions

On “Pharo 8.0”

As a long time Ruby developer I frequently hear older developers talking fondly about their experiences working with Smalltalk long ago. When I saw this post, I was curious enough to watch a video just now by a respected Ruby dev (who's admittedly new to Smalltalk and using an older version of Pharo): link to this video . The video is short, but it looks to me like the advantage of developing in this environment is mainly that you can write a test, run it in a kind of debug mode, and when the environment encounters something it doesn't understand it gives you some options for creating something new like an object or a method to solve the problem. This seems kind of cool, but I feel like there must be m…

pjmlpon Hacker News • Mentions

On “Emacs 27.1”

Anders explains it better than me, "Anders Hejlsberg on Modern Compiler Construction" link Basically ability to see the language AST at all time, do time checking with broken code, incremental compilation, REPL and IDE editing experience is fused together. Here is another short examples, "7 minutes of Pharo Smalltalk for Rubyists" link to this video "MountainWest RubyConf 2014 - But Really, You Should Learn Smalltalk" link

feifanon Hacker News • Mentions

On “Computers Aren't Fun Anymore (2020)”

IMO high-level, low-tech DSLs are under-explored. Lots of possibilities there. I don't think you're necessarily limited to just text-based DSLs though; there's interesting opportunities when you pair with a UI. For example, see Pharo: link to this video