Live data from Hacker News

Pharo 4.0 Released

pharo.org

21–30 of 81 posts

Re: Pharo 4.0 Released

#21

Earlier quoted context omitted.

So does iTunes on windows and Qt (since v. 4) on everything. But I agree the single-window MDI is a major drawback. I keep checking out Pharo periodically and hoping a UI with multiple, native windows will be present or at least in the works, but sadly that is not yet the case. There was actually a project many years ago for Squeak to give it native OS windows called Cheese, and the Squeak people, if you can believe…

With the new OSWindows you can create multiple native windows. But... this is cool to allow people to do their stuff, but it does not match very well with the development philosophy of Pharo, where we open many windows at the same time. Imagine 20+ browsers, inspectors, playgrounds opened, all mixed with your regular browsers, mail, any kind of applications and you will understand why we prefer to keep the MDI. Said…

If a window manager does not support dealing with multitudes of applications with multiple windows, then the window manager does something wrong.

> Imagine 20+ browsers, inspectors, playgrounds opened, all mixed with your regular browsers, mail, any kind of applications and you will understand why we prefer to keep the MDI.

I simply hide these other applications - actually I use auto-hiding after some time period. No need for an MDI.

Let's look. My Mac now has 11 apps open: mail, calendar, contacts, browser, previewer, notes, two Lisp systems, several terminals, a finder, twitter, ...

Both Lisp systems use native windows, menus, buttons, dialogs, text fields, ... each Lisp editor is a separate window, ...

Re: Pharo 4.0 Released

#22

Not having heard of Pharo before 10 minutes ago, I wish this website did a better job of explaining what it is. "... an object-oriented programming language and a powerful environment... (think IDE and OS rolled into one)" An IDE and OS rolled into one? What does that even mean? I had to go to Wikipedia to learn that this is basically a modern Smalltalk implementation. So why not just say that on the main page? I onc…

Because if you don't understand "an IDE , OS rolled into one" then you don't understand what Smalltalk is anyway. Its not easy to explain what Pharo is , the same way its not easy to explain what Emacs is , etc. There are may ideas and workflow integrated into it and its development workflow is radically different to normal programming languages. "Does it compile to executables"

No it does not , but there is no need. Pharo can be distributed with your application and it does need to installed its a standalone.

"or does it require an interpreter or VM at runtime?"

its interpreted to byte code and it has a JIT VM. It is always runtime ;) Meaning everything is live and running even your source code. Compilation happens under the hood without the user being aware of it.

"Can applications be built from command-line (or a build script on a CI server), or is it tightly coupled with the IDE?"

There is a command line interface , also any method can be exported to command line and Pharo can run without a GUI.

"The Wikipedia article mentions some web frameworks, but the Pharo website shows screenshots of what appear to be desktop GUI applications (or maybe data visualizations running inside the IDE, a la R with RStudio?)."

There is a web framework which quite popular and actively developed Seaside that allow you to use javascript , html and the usual suspect. Plenty of others frameworks exists as well but not so actively developed. Most success stories in the web site use those frameworks.

"Maybe someone with some hands-on experience could provide a TL;DR, for those who aren't willing to read the full book just to get a high-level sense of this?"

you can also drop in IRC for general directions, and ask questions to the mailing list, the community is very welcomed for newcomers. But give pharo a try and ask questions and you wont regret it Pharo is a great way and fun way to create software.

I have made also video tutorial for newcomers

https://www.youtube.com/watch?v=Ol5ivaEATLQ&list=PLqbtQ7OkSt...

I have also made this simple guide to explain what Pharo really is

http://thekilon.wix.com/pharo-about

Re: Pharo 4.0 Released

#23

Not having heard of Pharo before 10 minutes ago, I wish this website did a better job of explaining what it is. "... an object-oriented programming language and a powerful environment... (think IDE and OS rolled into one)" An IDE and OS rolled into one? What does that even mean? I had to go to Wikipedia to learn that this is basically a modern Smalltalk implementation. So why not just say that on the main page? I onc…

"Does it compile to executables, or does it require an interpreter or VM at runtime?" It looks like they are still using (since 2010) the COG VM, which is a fast jitting VM, but I think they have others in works to replace/improve it.

COG JIT VM is still the main VM, though the old one is also supported for mobile platforms like Raspbery Pi. There is also work to move Pharo to 64 bit.

Re: Pharo 4.0 Released

#24
post #20
post #18

Earlier quoted context omitted.

You would want it because its implemented in Pharo and because Pharo allow you to easily hack the system that means you can make the interface look any way you want without having to mess with C libraries. Also being Pharo it is part of the live system and it also push pharo development towards visual coding. As someone else pointed out already Pharo is a virtual OS, so having its own GUI API part of its very powerfu…

It's beyond my understanding why non-native windows, buttons, menus, etc. are a requirement for 'live-coding' or 'visual coding'.

its not, but on the other hand, existing GUI APIs are not live coding friendly nor made in Pharo ;) Also the moment you want to change something or hack something , welcome to C++ hell. You sacrifice native look and powerful features, you get a live easy to hack system in return. But as I said Pharo DOES NOT forbid you from using Native libraries of any sort, including GUI. The fact that the vast majority of pharo developers choose not to use native gui apis, says a lot about how desirable GUI APIs are compared to "non native look" Pharo GUI API which is called Morphic :)

Re: Pharo 4.0 Released

#25
post #6

The changelog is here: https://github.com/pharo-project/pharo-changelogs/blob/maste... Things that I find especially interesting, from new stuff: > TxModel, a modern text model who works with Athens (Preview) This is very, very nice. New text model was in the works for quite some time now and I'm glad it finally landed. Easy and powerful text editing is important, even in primarily GUI-driven environments. Pharo was…

>Slots model instance variables as first class enities and enable meta-programming on this level.

That sounds similar to Self, where everything was expressed with slots, including instance variables. I believe Self also had a way to mark slots as immutable, which would be an awesome feature to get in Pharo.

Re: Pharo 4.0 Released

#26
post #7

It still has a strange non-native user interface. Why would I want another window system in a window in 2015?

So does iTunes on windows and Qt (since v. 4) on everything. But I agree the single-window MDI is a major drawback. I keep checking out Pharo periodically and hoping a UI with multiple, native windows will be present or at least in the works, but sadly that is not yet the case. There was actually a project many years ago for Squeak to give it native OS windows called Cheese, and the Squeak people, if you can believe…

We should not forget Pharo IS a fork of Squeak, it goes to a very different direction but is based on the same code. GUI wise Pharo inherited its GUI API, Morphic from Squeak. My personal opinions is that native look interfaces are dead. Nowdays most apps use custom look especially web applications.

Native looks apps look boring. Users don't like boring applications. At least I dont :)

The GUI in Pharo is not ideal but we should not also forget that this is a small community that is able to come up with tons of new cool useful features in each release because of how R.A.D Pharo is.

Re: Pharo 4.0 Released

#29
post #22

Not having heard of Pharo before 10 minutes ago, I wish this website did a better job of explaining what it is. "... an object-oriented programming language and a powerful environment... (think IDE and OS rolled into one)" An IDE and OS rolled into one? What does that even mean? I had to go to Wikipedia to learn that this is basically a modern Smalltalk implementation. So why not just say that on the main page? I onc…

Because if you don't understand "an IDE , OS rolled into one" then you don't understand what Smalltalk is anyway. Its not easy to explain what Pharo is , the same way its not easy to explain what Emacs is , etc. There are may ideas and workflow integrated into it and its development workflow is radically different to normal programming languages. "Does it compile to executables" No it does not , but there is no need.…

> then you don't understand what Smalltalk is anyway Sorry, but I think that is just wrong. As far as I know, Pharo is one of the best and more approachable alternatives to enter the Smalltalk world. They should be doing a better job at welcoming people to "their world". If they want people to just come already knowing what they are going to get, I don't see how are they going to go mainstream, ever (assuming they would like to.)

Re: Pharo 4.0 Released

#30
post #26

Earlier quoted context omitted.

So does iTunes on windows and Qt (since v. 4) on everything. But I agree the single-window MDI is a major drawback. I keep checking out Pharo periodically and hoping a UI with multiple, native windows will be present or at least in the works, but sadly that is not yet the case. There was actually a project many years ago for Squeak to give it native OS windows called Cheese, and the Squeak people, if you can believe…

We should not forget Pharo IS a fork of Squeak, it goes to a very different direction but is based on the same code. GUI wise Pharo inherited its GUI API, Morphic from Squeak. My personal opinions is that native look interfaces are dead. Nowdays most apps use custom look especially web applications. Native looks apps look boring. Users don't like boring applications. At least I dont :) The GUI in Pharo is not ideal b…

I disagree, native looking applications, while "boring", at least feel natural. Every time I use an application with custom controls (which almost always look pillowy) I feel like it wasn't made by a professional, it tends to respond different and it just doesn't feel right. I have read again and again criticism against Java and how it "failed" in the desktop because every time you used a Java application, it looked like a Java application.
Post reply on HN