Live data from Hacker News

Pharo 8.0

pharo.org

51–60 of 98 posts

Re: Pharo 8.0

#51

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): https://www.youtube.com/watch?v=HOuZyOKa91o . The video is short, but it looks to me like the advantage of developing…

There is no single selling point. Here are some surface things that I immediately liked:

1. You can download a single zip file (Pharo Standalone) and it will give you all the tools of a modern IDE without shitting all over your system and with faster startup than Atom, VS Code or even LINQPad.

2. The environment retains all its state across restarts. The editor stuff, the running state of the program - everything.

3. You have the same capabilities as the people who developed the language. You program, the run-time environment and the editor itself can be browsed and edited by the same set of tools, without any extra hoops. There is very little "magic".

4. The syntax of the language is designed so that you can create DSLs without using macros or pre-processors.

5. It's the only environment in my recent memory where I can do stuff without opening the web browser to search for something every 5 minutes.

6. IMO, breaking the system into four-tier structure made the whole thing much more tractable than infinitely nested directories or namespace hierarchies. I also like that there is no need to manage files with code.

Re: Pharo 8.0

#52

Earlier quoted context omitted.

I'm on a retina mac, and it looks like this https://imgur.com/a/iSkHMlJ text rendering-wise. Maybe it's my middle age eyes, but it looks fine to me???

The Pharo window is significantly pixelated in comparison to the browser window on the left

Interesting. Maybe I need new goggles.

Re: Pharo 8.0

#53
post #22
post #5

So, still no HiDPI/Retina support. This is probably the most requested feature since at least Pharo 4, and nobody seems to be interested in implementing it.

> This is probably the most requested feature since at least Pharo 4 I don't see any page where it says this is the most requested feature. If it was, it would've been developed by now. It's kinda funny, few hours ago there was a post on the frontpage by burntsushi on the terrible way FOSS developers are treated. And here we have a live example of the usual drive-by commenters who take one glance at the project and d…

I am a Smalltalk enthusiast who worked with Cincom ST, Dolphin ST (when it was still a thing), Squeak, Amber, and Pharo. I would be happy to use Pharo. It is so beautiful. It is full-featured. It would be a joy to work with... but I can’t, because I see the pixels.

Pharo’s rendering layer is complicated, to say the least. I made a few approaches in attempting to figure out how it works and perhaps starting adapting it to hidpi screens... but it is a really complicated endeavor. I am not demanding anything from Pharo developers, I am just saying it is a pity I can’t use this beautiful, innovative Smalltalk system. Pixelated UI among the smooth lines of other apps make it unusable for me, and I am not smart enough to fix it.

Re: Pharo 8.0

#54
post #5

So, still no HiDPI/Retina support. This is probably the most requested feature since at least Pharo 4, and nobody seems to be interested in implementing it.

I'm on a retina mac, and it looks like this https://imgur.com/a/iSkHMlJ text rendering-wise. Maybe it's my middle age eyes, but it looks fine to me???

This 39 year old with contacts definitely sees fuzzy characters. It would drive me crazy.

Re: Pharo 8.0

#55

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): https://www.youtube.com/watch?v=HOuZyOKa91o . The video is short, but it looks to me like the advantage of developing…

The 'more to it' is the fact that you are always effectively in 'debug mode'. By default, there is no distinction between development and deployment in Smalltalk[1] so when something fails, you typically will get a debugger pop of the method at the exact statement where the problem occurred with the live state as of the moment of the problem. The entire environment is as static or dynamic as you want it to be since it's entirely malleable.

Since Ruby was largely inspired by Smalltalk, you'll find similarities in their views of OO and code. Where they fundamentally differ is in the environment since Smalltalk is based on a monolithic persistent image so it can do things like have the debugger, and other GUI tools, built in. All that video was showing was built in stuff from the Pharo image... other dialects have their own takes on the tools.

[1] You can create a distinction by removing the development tools and replacing their functionality with non-interactive logging/error handlers for production deployment.

Re: Pharo 8.0

#56
post #2

Pharo always looks cute, but does anyone here use it, even for toy stuff?

I've been using various Smalltalk dialects (Squeak/Cuis/Pharo) for over a decade. I've gone a bit off the deep end and use it for prototyping pretty much everywhere I can.

Pharo would be the one Smalltalk environment I would not use for non-toy stuff because it has historically been so unstable. This is at least somewhat by design since the developers have always stated they didn't want to be constrained by backwards compatibility... and they have never let themselves be. It's a great environment for playing around with ideas, not for developing code you expect to work as is a few years from now without some (potentially serious) work. In fairness, all the Squeak dialects have this issue to varying degrees. It just seems to me that it's more extreme with Pharo.

Re: Pharo 8.0

#57
post #2

Pharo always looks cute, but does anyone here use it, even for toy stuff?

Me. It is my go-to tool to build everything/prototype. It is the most productive tool I know of to get things up and running. There is nothing like it. I also know Python, Lua and various Schemes, but they do not come close. Smalltalk presents the smallest barrier between idea and working code for me.

Especially if with the "live in the debugger" type of development where you write a test and get the debugger to tell you the next step.

Try it, you might like it.

Re: Pharo 8.0

#58
post #24
post #2

Pharo always looks cute, but does anyone here use it, even for toy stuff?

I once interviewed a candidate who decided to use Pharo to solve my technical problem. It was an absolute joy to see not only a good approach, but such an interesting and alien language employed to solve it. He got the job. :)

Was it an on-site interview? I’m curious how he was able to convince you to install the env.

Re: Pharo 8.0

#59

Earlier quoted context omitted.

I also thoroughly enjoy Seaside. There's also https://iliadproject.github.io/ for another approach.

Iliad says Latest commit 0be1977 on Jul 18, 2017. Seaside says last commit 24 August 2019. Any actively maintained web framework that will work with Pharo 8?

That is considered active. The Smalltalk community is far smaller than other languages and web development is a small subset of that community. So you won't see nearly the frequency of commits of projects. Also, the major web frameworks are pretty stable these days so most of the action is in the integration of support for various client-side Javascript libraries. Those are often published as separate projects.

Re: Pharo 8.0

#60
post #22

Earlier quoted context omitted.

> This is probably the most requested feature since at least Pharo 4 I don't see any page where it says this is the most requested feature. If it was, it would've been developed by now. It's kinda funny, few hours ago there was a post on the frontpage by burntsushi on the terrible way FOSS developers are treated. And here we have a live example of the usual drive-by commenters who take one glance at the project and d…

I am a Smalltalk enthusiast who worked with Cincom ST, Dolphin ST (when it was still a thing), Squeak, Amber, and Pharo. I would be happy to use Pharo. It is so beautiful. It is full-featured. It would be a joy to work with... but I can’t, because I see the pixels. Pharo’s rendering layer is complicated, to say the least. I made a few approaches in attempting to figure out how it works and perhaps starting adapting i…

I asked about this on the mailing list a while back. Apparently it requires changes in the VM, and as you can imagine there are fewer people working on the VM side. This must also be a problem for Squeak, too, but they work around it by having better options for scaling morphic components. Obviously it needs to be addressed.
Post reply on HN