Live data from Hacker News

Pharo 7.0 released

pharo.org

61–70 of 236 posts

Re: Pharo 7.0 released

#61
post #55

Earlier quoted context omitted.

But that's the development environemnt/compiler and tooling. It still could generate binaries for microcontrolers for example.

No, it couldn't. It's image-based. Your application is the development environment. That's the point of Smalltalk.

But it does, apparently: https://github.com/pharo-iot/PharoThings

EDIT: Nope! I was wrong, see comment below. It promises Arduino support but via some firmware with Pharo itself still running on the desktop.

Re: Pharo 7.0 released

#62
post #32

Earlier quoted context omitted.

You certainly can use Pharo with normal tools. You just write (and version, and whatever else) your code normally in files, then you "file in", or load, those in Pharo. You'd need ~3 lines of a wrapper if you don't want to do it manually. I share your concerns, actually - the truth is, the code editing part of Pharo is its least compelling feature and just cannot compare to my Emacs setup with years of tweaking behin…

Considering how many editors have Vim emulators now, it's a little surprising nobody's done it for smalltalk yet.

There is... https://github.com/unchartedworks/SmalltalkVimMode I haven't used it, so YMMV.

Re: Pharo 7.0 released

#63
post #32

Earlier quoted context omitted.

Considering how many editors have Vim emulators now, it's a little surprising nobody's done it for smalltalk yet.

I've yet to use a Vim emulator that worked as well as Vim though. The amount of features in it are mind boggling and replicating that would be the work of a large fully funded team.

Even so, lots of people find emulators useful, especially in the context of an IDE that brings its own compelling features to the table. For years I used a commercial emulator in Visual Studio that was a huge boost to my productivity. It was the work of a sole developer.

And smalltalk does bring a lot of compelling features, as others here have noted.

(And some emulators are quite good, like evil-mode, which has converted some hard-core vimmers. Which also makes me wonder about implementing the core of emacs in smalltalk, making similar functions available, and extending it with smalltalk instead of elisp.)

Re: Pharo 7.0 released

#64
post #55

Earlier quoted context omitted.

No, it couldn't. It's image-based. Your application is the development environment. That's the point of Smalltalk.

But it does, apparently: https://github.com/pharo-iot/PharoThings EDIT: Nope! I was wrong, see comment below. It promises Arduino support but via some firmware with Pharo itself still running on the desktop.

That runs the VM on the embedded Linux computer, and provides remote access to the development tools/an API to run development tools against.

Re: Pharo 7.0 released

#65

Where does the Pharo runtime run? To which platforms can I bring its solutions? are these standalone binaries or can I create libraries or code which play well with other languages and systems? Every time I look at a programming language, and at the HN it is every second day, I think about what kind of problems can it solve, and for what kind of platforms these compile/run their runtimes.. and surprisingly not many p…

I looked for any useful documentation for a few minutes and just gave up. I don't want to read a book. I don't want to watch a video. This is not my first programming language, thank you. I just want a "hello world" example to get an idea what I am actually dealing with. How do I run a "hello world" program from the command line? How can I deploy that to another machine that doesn't necessarily have a GUI?

in case you get really curious: https://mooc.pharo.org/

also a hello world will never ever give you any idea about smalltalk/pharo.

don't be impatient, this is a system worth playing with, it's quite ~amazing.

Re: Pharo 7.0 released

#67

Where does the Pharo runtime run? To which platforms can I bring its solutions? are these standalone binaries or can I create libraries or code which play well with other languages and systems? Every time I look at a programming language, and at the HN it is every second day, I think about what kind of problems can it solve, and for what kind of platforms these compile/run their runtimes.. and surprisingly not many p…

I looked for any useful documentation for a few minutes and just gave up. I don't want to read a book. I don't want to watch a video. This is not my first programming language, thank you. I just want a "hello world" example to get an idea what I am actually dealing with. How do I run a "hello world" program from the command line? How can I deploy that to another machine that doesn't necessarily have a GUI?

Think Smalltalk is one case where thinking incrementally from what you already know about programming might be doing yourself a disservice.

Re: Pharo 7.0 released

#68

"Everything's an object" is object oriented programming done right and I can see why Ruby and other languages used those ideas from Smalltalk. I couldn't understand the fascination with the integrated environments though. It was my biggest stumbling block. Is there a pathway to use Pharo with my traditional tools?

You don't like having a system fully built in one language / paradigm ? It felt very exciting and relaxing to me. But to each his own.

Re: Pharo 7.0 released

#69

"Everything's an object" is object oriented programming done right and I can see why Ruby and other languages used those ideas from Smalltalk. I couldn't understand the fascination with the integrated environments though. It was my biggest stumbling block. Is there a pathway to use Pharo with my traditional tools?

>I couldn't understand the fascination with the integrated environments though.

The only thing I can recommend it watching some Alan Kay videos or Pharo demos.

Windows and Linux UI conditioned everyone to think of UI as a crutch for incompetent users, rather than a tool useful in its own right. This cannot be undone in a single reply, no matter how elaborate it will be.

Traditional tools are definitely more polished at the moment, but they are exactly that - traditional, shaped by historic accidents, rather than design. Software development is currently running on a set of highly refined steam engines.

For example, what are the chances that a simulation of a teletype is the best interface for interacting with an operating system? What are the chances that the best conceptual model for a unit of information is manila folder or a phone book ("files", "directories").

Also, IDE came to mean "bloated monolith for editing and compiling code". But it should really mean that application interface is the development tool. Tools that are integrated into OS and applications.

Re: Pharo 7.0 released

#70
post #36

Earlier quoted context omitted.

It feels like an alien world moving into the Smalltalk live environments and the patterns I've built up over the years and tools like Vim, etc are indispensable when it comes to moving around and modifying code. Of all the reading I've done on it, the entirety of the language is contained inside images. I know that the Pharo guys have engineered this marvel, and I think it's on the verge of a breakthrough with a lot…

It is an alien world.... but a better one by most measures. I come from Emacs (20+ years when I first encountered the Smalltalk IDE), and find aspects of code editing irritating sometimes, but the overall value of the IDE more than pays for that irritation. One of the coolest things is TDD carried to an extreme level. I build my test, and it fails because there's no such method, so I get a debug window and tell it to…

Here is an example of Pharo style TDD.. https://www.youtube.com/watch?v=HOuZyOKa91o
Post reply on HN