Live data from Hacker News

Pharo 7.0 released

pharo.org

21–30 of 236 posts

Re: Pharo 7.0 released

#22

"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?

It's more than "everything is an object", though. It's "everything is a live object", which is why you need the entire integrated environment with it.

Yes, that's the real point of Smalltalk.

I'm incredibly frustrated by environments like Ruby on Rails which pay lip service to the idea of "everything is an object" — but those objects are just a cesspool of hollow non-evolving throwaways that get built up and torn down on every request.

It's the difference between a castle made out of toy blocks and the Buckingham Palace.

Re: Pharo 7.0 released

#23
post #17

"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 That's one of the key benefits: the environment is an object too. First class IDE knowledge about your objects (Smalltalk pioneered automatic refactorings etc), the ability to modify it as you like, hot code reload, re-startable apps, "live" images to send for debug, etc.

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 of people if they can ease into it somehow.

Re: Pharo 7.0 released

#24

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…

Why the downvotes? is there anything wrong in my question? I read the webpage and the answer is nowhere (at least I could not find it), and looking at the docs is not so easy to find this information, it seems that I have to get deep in a chapter of a book or a video in order to find out whether this tool has anything to do with my work, tool or area at all.

Does it compile to other platforms? Binary code, compile to C, to LLVM? Does it compile to other VMs like Java and it is compatible with javascript engines? For me this is a basic aspect of a language.

Re: Pharo 7.0 released

#26
post #17

"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 That's one of the key benefits: the environment is an object too. First class IDE knowledge about your objects (Smalltalk pioneered automatic refactorings etc), the ability to modify it as you like, hot code reload, re-startable apps, "live" images to send for debug, etc.

That does sound amazing.

Re: Pharo 7.0 released

#27

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…

Why the downvotes? is there anything wrong in my question? I read the webpage and the answer is nowhere (at least I could not find it), and looking at the docs is not so easy to find this information, it seems that I have to get deep in a chapter of a book or a video in order to find out whether this tool has anything to do with my work, tool or area at all. Does it compile to other platforms? Binary code, compile to…

The download page clearly shows Windows, Mac and Linux.

Re: Pharo 7.0 released

#28

"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 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 behind it - and I tried working outside of Pharo at one point. The main problem with that was the loss of many features of Pharo IDE: autocompletion, go to definition, who calls a method, refactoring support, unit test support, debugger (it's magic, really), eval anything anywhere and more.

In the end, I decided that it's not worth it to insist on using my normal tools and learned to use Pharo as a whole (although text editing still sucks, which can explain why the average length of a method tends to be so low in Smalltalks...)

Re: Pharo 7.0 released

#29

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…

Why the downvotes? is there anything wrong in my question? I read the webpage and the answer is nowhere (at least I could not find it), and looking at the docs is not so easy to find this information, it seems that I have to get deep in a chapter of a book or a video in order to find out whether this tool has anything to do with my work, tool or area at all. Does it compile to other platforms? Binary code, compile to…

For what it's worth I think these are decent questions to ask, even if others think they're worthy of a downvote.

As far as I understand it: it doesn't necessarily compile in that sense. You are constructing an 'image', which is basically a living environment that your program runs in, and maybe it corresponds somewhat to a VM. But you're not really treating the code that the VM runs as separate to the VM itself.

In some sense I think you might map it to something like a Lisp machine, where you can interact with a running program and its state through a REPL.

Someone more knowledgeable might be able to elaborate on that (or correct the misunderstandings), but it felt worth offering something other than a straight up dismissal of your question.

Post reply on HN