Hacker Newsnew | past | comments | ask | show | jobs | submit | ben-coman's commentslogin

Watching from afar the great advances in machine learning over the past few years with AlphaZero, GPT3, DALLE2 I felt it important for me to start understanding what is going on under the hood. Having just completed the private pre-release of the course run through USQ, as my first foray into machine learning this was a great introduction that had me quickly produce a working image classification system. The videos are packed really with insightful rid-bits about practical approaches to iterating quickly to understand the data better to produce better results. Very much recommend the course.


The traditional problem embedding is that the VM did a lot of window configuration before the image started. This has all been stripped out of the "minheadless" builds, which have defined a "virtual machine interface" used like... https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/p...

and... https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/p...


https://pharo.org was down. Its now back.


Squeak is directly descended from ST-80. Ten years ago Pharo forked from Squeak due to conflict around adding features outside the ANSI standard. Pharo wanted to distinguish itself from Smalltalk to avoid constraint by the standard so minimises mention of it. But Essentially Pharo is Smalltalk plus...


> are these standalone binaries or can I create libraries or code which play well with other languages and systems?

Traditionally Pharo could only create standalone applications, but the minheadless builds are making good progress on stripping the windowing code to facilitate it being embeddable.

A platform specific VM runs on Windows, Linux, OSX. All those VMs run a single application binary.


Pharo does have commandline functionality, but that won't demonstrate its value as a first experience. For an interactive tutorial... open Pharo, then left-click background, Tools > Playground, type & highlight 'ProStef go', right-click & 'do it'.

Then try these one-liners in the Playground... https://medium.com/concerning-pharo/elegant-pharo-code-bb590....

Then (and I know its a video) but maybe serverless PharoLambda would interest you... https://www.youtube.com/watch?v=YUbd0-FX6pI


Do you understand that you are not answering `virtualized`s question?

The question is not about a Pharo commandline that exists as part of the Pharo GUI.

The question is about an OS commandline like "GNOME Terminal" with stdio.


They do. By saying "there is such functionality, but you should try this instead, because using it from commandline won't tell you why this is interesting". Which isn't directly answering the question, but pointing the asker in a good direction.


Until the asker has been shown that their commandline requirements can be met — they will not be interested.


But it's entirely missing the point in that you don't use a Smalltalk environment so that you can run some hello world example from the command line.


A simple hello-world command-line example may be used to demonstrate:

— How to run a Smalltalk source code file as a script

— How to use stdio, How to use file handles

— How to load Smalltalk source code from files, save, deploy , and invoke on remote machines

Until `virtualized` has seen that basic stuff can be done, why should they care?


But this is about Pharo, which is a Smalltalk environment, which is different from how most programing languages are used. So starting from those kinds of questions is missing the point, when the focus should first be on seeing what makes a Smalltalk environment different.


> a Smalltalk environment

A Smalltalk implementation.

> So starting from those kinds of questions is missing the point…

The questions `virtualized` asked are simple and clear.

Telling `virtualized` that they are missing the point — instead of answering their questions — makes the community seem arrogant.


> Telling `virtualized` that they are missing the point — instead of answering their questions — makes the community seem arrogant.

However, virtualized stated that they gave up after five minutes because they couldn't find a hello world example similar to programming languages they're presumably familiar with, because they didn't want to watch a video or read a book. So explaining that the Smalltalk environment is different, and thus it doesn't make a lot of sense for Pharo's website to advertise with a command line example, is appropriate, since that implementation is GUI-based.

It would be akin to complaining about RStudio's site because someone couldn't quickly find how to run a hello world R script from the command line, when RStudio is about the IDE.


> … it doesn't make a lot of sense for Pharo's website to advertise with a command line example…

Pharo's website does attempt to "advertise with a command line example" — and then fails to show that the example works.

https://news.ycombinator.com/item?id=18971588


Thanks for your feedback. Maybe it would be better to show the three tools in separate screen shots rather than overlapping.

One aspect of simplicity is its minimal syntax... https://en.wikipedia.org/wiki/File:Pharo_syntax_postcard.svg


That's a pretty chaotic postcard. I think I get the point that it's trying to make, but at first glance it doesn't exactly convey the idea of simplicity.


Keep in mind that seems to be the entire syntax. Doesn't look chaotic to me, and I'm not even a Pharo (or Smalltalk) user!


correct. that is the entire syntax.


There is steadily growing industry backing for Pharo formalised in the Pharo Consortium - companies putting hard cash on the line to support its open source development. http://consortium.pharo.org/web


I haven't yet. Plan to soon. Here is a demo... https://www.youtube.com/watch?v=ezfjditHjq4&t=344s


Mostly consider it a programming language and deeply integrated development environment. However its a flavor of Smalltalk which ran as the operating system on mini-computers circa 1980s. Pharo retains some of that influence. For example the whole runtime state of your application can be saved to disk and moved around like you would move a VMWare image.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: