News for hackers. Stuff that matters.
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by diskzero on Friday August 27, 2021 @05:34PM (#28333211)
The most active Smalltalk inspired community seems to be Pharo. https://pharo.org

I have avoided calling Pharo "Smalltalk" as it has evolved from the original fork of Squeak and the project is evolving and modifying from its Smalltalk origins.

My personal favorite language that has evolved from Smalltalk is Newspeak. https://newspeaklanguage.org

The current version runs on top of WASM and can be used in a web browser. Gilad Bracha is going some exciting and interesting things with this language.

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by isr on Friday August 27, 2021 @06:10PM (#28333505)
IMHO, the claim that pharo is not smalltalk is, to put it bluntly, nonsense.

Yes, I understand that Pharo may well eventually change the some semantics of the underlying language, or at least reserves the right to do so. Fine, call it "not smalltalk" when that happens (if ever).

Until then, call pharo what it is. An interesting, in some ways innovative, FORK OF SQUEAK SMALLTALK.

Its a squeak fork, in the same way that cuis smalltalk is a squeak fork. Both pharo and cuis have evolved in different directions, as per their original directives.

And you know what? Thats fine. Great, in fact. Each can (and does) learn from the other.

And they're both STILL smalltalk. And thats also fine!

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by fiddlerwoaroof on Friday August 27, 2021 @06:49PM (#28333806)
I think of Pharo as a bit like Racket: it intentionally is distanced a bit from the parent language to avoid being limited to the design of that language. For example: the word “Smalltalk” isn’t anywhere on the homepage of the project.
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by gugagore on Saturday August 28, 2021 @06:17AM (#28336943)
I'm not so sure that's the only reason to intentionally distance from the "SmallTalk" brand. There might be a advertising benefit, too, since ST is sometimes maligned for having "lost".
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by mumblemumble on Saturday August 28, 2021 @09:41AM (#28337967)
Even without active malignment, Smalltalk is largely perceived as a historical curiosity of primarily academic interest. Even among many people who like it.

Since Pharo wants to position itself as a modern, industrial programming language, it makes sense that the project would want to distance itself from that reputation.

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by sebastianconcpt on Saturday August 28, 2021 @12:50PM (#28339472)
But if you look at the hero myth is the wrong strategy. It's like the immature hero that wants to hide who his father is because is ashamed for some immature reason hence demonstrating that is not ready yet for the challenge of the world. The alternative is, embrace his history, have a clear own identity, and yet come back and rescue his father (not the project but the spirit) "from the belly of the beast" and improve itself and the world by doing so. Not doing it like that will not fit the psychological archetypes of the good stories that marketing needs and fail and waste a lot of effort having at the end of the day to always admit it is a Smalltalk. Not all products can aspire to be legends. This is one that can do it.
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by igouy on Saturday August 28, 2021 @11:19AM (#28338724)
"A position (or statement of position) is a cold-hearted, no-nonsense statement of how you are perceived in the minds of prospects. It is your position."
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by musicale on Saturday August 28, 2021 @02:34AM (#28336081)
> Until then, call pharo what it is. An interesting, in some ways innovative, FORK OF SQUEAK SMALLTALK.

This, precisely. Pharo is a fork of Squeak Smalltalk, and Squeak Smalltalk is a direct descendant of Smalltalk-80.

(And a common thread in Smalltalk implementations and versions from Smalltalk-72 to Squeak is the illustrious Dan Ingalls.)

Still, Smalltalk has nothing on Lisp or BASIC in terms of dialects/variants/versions. ;-)

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by jecel on Friday August 27, 2021 @10:42PM (#28335161)
Some people are very picky and only accept Smalltalk-80 as "Smalltalk". Of course, that would make Smalltalk-72, -74, -76 and even -78 not Smalltalk, which would be very odd.

I, on the other hand, consider Self and Slate to be good examples of Smalltalk.

Beyond any technical discussions there is the marketing issue. Smalltalk's reputation took a major hit in the 1990s with the rise of Java (from the "language of the future that doesn't run on the computers you have, yet" it became "a failed language of the past") and association with the name can hurt a project in some cases.

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by pjmlp on Saturday August 28, 2021 @07:52AM (#28337355)
I did not help that major Smalltalk vendors like IBM, decided to replace their Smalltalk product line with Java ones.

Eclipse grew out from Visual Age series.

Or that Sun repurposed Strongtalk for Hotspot.

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by caslon on Friday August 27, 2021 @09:14PM (#28334684)
> Please don't use uppercase for emphasis. If you want to emphasize a word or phrase, put asterisks around it and it will get italicized.

https://news.ycombinator.com/newsguidelines.html

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by isr on Saturday August 28, 2021 @08:41PM (#28342940)
Thank YOU for taking the TIME and EFFORT to attempt to OUTLAW the BARBARIC PRACTICE of using capital letters in written communications, to convey a slightly ELEVATED tone.

Err ... oops ... ;-)

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by agumonkey on Friday August 27, 2021 @06:02PM (#28333441)
the french mooc platform FUN made a Pharo MOOC and it was beyond great

the smalltalk universe is pretty special, the live graphical environment is thrilling and their idioms/culture is also very interesting

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by adamors on Saturday August 28, 2021 @03:30AM (#28336289)
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by Qem on Friday August 27, 2021 @07:01PM (#28333924)
The MOOC is great. It was my introduction to Pharo and Smalltalk programming. The focus is on web development, I hope they eventually create a version geared towards data science. I'm still far from mastering Pharo, or any Smalltalk-like languages, but just scratching the surface made me remind that William Gibson quote: "The future is already here – it's just not evenly distributed".
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by agumonkey on Saturday August 28, 2021 @03:08AM (#28336202)
I thought they'd leverage more of the visual aspect of pharo for visualization/statistics. Maybe next time :)
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by uksmalltalk on Sunday August 29, 2021 @01:53PM (#28348882)
If you're interested in visualization/statistics with Pharo, you should check out Alexandre Bergel's work at http://agilevisualization.com/ . Alexandre kindly gave a presentation on this topic at the October 2020 UK Smalltalk User Group meeting: https://vimeo.com/473356757 .
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by cobaltoxide on Saturday August 28, 2021 @03:32AM (#28336295)
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by Qem on Friday August 27, 2021 @05:59PM (#28333410)
I played a bit with Newspeak, in their legacy Squeak-based IDE, but after they migrated to the new webapp IDE, I was kinda lost, in this new environment. I didn't find much documentation about the new IDE. Any recommendations?
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by diskzero on Friday August 27, 2021 @06:05PM (#28333473)
The forum will get a response from Gilad or others: https://groups.google.com/forum/#!forum/newspeaklanguage

A simple example of Newspeak and literate programming: https://newspeaklanguage.org/samples/Literate/Literate.html

The IDE works in a similar way to the Squeak-based IDE, but there is no image and being hosted in a browser has other limitations. This isn't a language you are going to use to make a quick and dirty CRUD app (although I have) but it is an interesting example of how Smalltalk concepts can be used in a web-based world.

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by fiddlerwoaroof on Friday August 27, 2021 @06:47PM (#28333785)
Is there a sample that demonstrates Gilad’s ideas about parameterized modules?
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by diskzero on Friday August 27, 2021 @06:52PM (#28333839)
I can only point you to the doc, which you may have already seen: https://www.bracha.org/newspeak-modules.pdf

It is worth asking on the forum to see if there is some exisiting code to show this in practice.

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by fiddlerwoaroof on Friday August 27, 2021 @10:55PM (#28335225)
Thanks, when I was working on a particularly convoluted React codebase, I realized that it's better to pass dependencies into modules rather than importing them and, when I looked around to see what prior art there was to this idea, I came across https://gbracha.blogspot.com/2009/06/ban-on-imports.html
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by zetalyrae on Friday August 27, 2021 @06:14PM (#28333539)
Has there been any new work on typed Smalltalk, maybe along the lines of Strongtalk[0]?

[0]: https://en.wikipedia.org/wiki/Strongtalk

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by jecel on Friday August 27, 2021 @10:33PM (#28335105)
Not exactly the same direction as Strongtalk, but Herman Wilkinson's "live typing" project does interesting things by collecting type information as Smalltalk runs.

Here is a recent talk he gave about it:

https://vimeo.com/ukstug

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by virtualwhys on Friday August 27, 2021 @05:48PM (#28333324)
> Gilad Bracha is going some exciting and interesting things with this language.

Hopefully not in the same way that Dart turned out to be so "exciting and interesting" :)

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by bradrn on Friday August 27, 2021 @06:00PM (#28333423)
What’s wrong with Dart? (Don’t know anything about the language, just curious.)
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by igouy on Friday August 27, 2021 @07:13PM (#28334012)
Nothing much.

Perhaps a question of expectations: "The big question is whether Google originally intended Dart to replace JavaScript".

https://insights.dice.com/2019/03/27/fall-rise-dart-google-j...

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by igouy on Friday August 27, 2021 @07:10PM (#28333988)
You mean a change in direction?

Dart 1.0 Optional Types runtime checks

Dart 2.0 Mandatory Types (sound null-safe type system) static checks + runtime checks.

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by pjmlp on Saturday August 28, 2021 @05:40AM (#28336817)
Gilad had nothing to do with Dart 2.0, in fact it goes very much against his beliefs in language design.

All the key designer from Dart 1.0 left Google shortly after Chrome dropped support.

The language only got rescue thanks to AdWords not wanting to rewrite their stack yet again (they had recently migrated away from GWT).

Afterwards Flutter provided the necessary funding to keep improving the language as they replaced JavaScript with Dart.

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by mhd on Saturday August 28, 2021 @10:02AM (#28338138)
I haven't kept up with Dart, as I kinda fail to see the point right now, so can you elaborate a bit on how you think the current design is going against Gilad Bracha's convictions?

Language evolution is an interesting thing, especially when you've got corporate influence, second system effect etc. Or simply the need to add stuff, as languages are considered just another product, and otherwise you're considered "stale" in today's market. Weird.

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by pjmlp on Saturday August 28, 2021 @10:15AM (#28338249)
Gilad is strongly into dynamic type systems and pluggable types (Dart 1.0, Typescript and so on).

http://bracha.org/Site/Papers.html

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by igouy on Saturday August 28, 2021 @11:09AM (#28338645)
Quite. But is that what virtualwhys meant?
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by agumonkey on Friday August 27, 2021 @06:01PM (#28333431)
so far ~socially Dart has failed but the language is actually way more interesting than I thought it would ...
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by travisgriggs on Saturday August 28, 2021 @11:50AM (#28339008)
Interesting. I’m a fan of Gilads work, and have a strong admiration for Lars Bak who were both involved in 1.0. I followed it cursorily from time to time and thought it looked intriguing. I had a number of colleagues from the Smalltalk industry that went to work on it.

They’ve all left now (I don’t know what Lars’ involvement is anymore?).

But I was curious about Dart for a cross platform app and learned Dart 2.0 and was wholeheartedly let down. I just felt like I was staring at a Java dialect. The “sanctioned” tutorial I watched introduced classes as a “way of organizing code” which I guess could abstractly be said to be true, but IMO misses the mark entirely.

Anyway, I found Dart 2.0 to be very uninteresting. Very safe and traditional and boring. Maybe I need to relook closer to try and see what you’re seeing that I did not.

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by agumonkey on Saturday August 28, 2021 @01:26PM (#28339773)
don't read too much into what I said, I barely read the async/concurrent primitives they made, it felt different and interesting. I came with the impression that it would be a cuter java (like you somehow) but these bits caught my brain by surprise.
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by igouy on Sunday August 29, 2021 @10:53AM (#28347175)
> … but IMO misses the mark entirely.

because…?

for example…?

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by andrea81 on Friday August 27, 2021 @06:31PM (#28333656)
Just curious why it failed...
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by zetalyrae on Friday August 27, 2021 @08:09PM (#28334347)
Until recently[0] Dart had pervasive nullability, that is, all types `T` are implicity `Option(T)`. Which in my view was completely unacceptable even in 2011 when it was initially released.

[0]: https://dart.dev/null-safety

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by musicale on Saturday August 28, 2021 @09:10PM (#28343124)
So like Java then?
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by agumonkey on Saturday August 28, 2021 @03:10AM (#28336206)
No idea, and I wasn't judging, it's just that on average you'll see 12 languages on articles / news / threads before you see mention of Dart. I heard flutter was solid and quite used but "socially" the mentions are rare.
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by hota_mazi on Friday August 27, 2021 @07:33PM (#28334149)
Because depending on what you want to do, Typescript and Kotlin are better languages with superior tooling, adoption, and community support.
Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by hota_mazi on Friday August 27, 2021 @07:29PM (#28334129)
Wow, the NewSpeak repo doesn't inspire confidence [1]

First, source files everywhere, including in the root, and routinely thousands of lines long [2] with zero comments in them.

[1] https://github.com/newspeaklanguage [2] https://github.com/newspeaklanguage/newspeak/blob/master/Bra...

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by diskzero on Friday August 27, 2021 @11:04PM (#28335263)
I don't want to vigorously defend the organization of the git repo, but browsing the source code of Smalltalks is always an issue. The source code is closely tied to the "browser" and for the longest time this was the only way to view the classes contained in an image. At some point mechanisms were designed to serialize the code to source control repos. The relationship of Smalltalk and version control systems is a difficult one.

In the case of Newspeak, I only would edit the raw source code if I had no other way to do it. It is so much easier and ergonomic to use the Newspeak IDE to view and modify the code, with the live debugger, object introspection and all the advantages that the IDE gives you. The recent addition of exemplars, where working fragments of the code are part of the documentation, is especially nice.

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by igouy on Saturday August 28, 2021 @11:35AM (#28338859)
> … only way to view the classes contained in an image…

Apart from a text editor?

        $ nano Pharo9.0-64bit-bf4a85f.sources

        [Read 1230003 lines (Converted from Mac format)]

"The relationship of Smalltalk and version control systems [not designed to preserve that Smalltalk way of working] is a difficult one."

https://www.google.com/books/edition/Mastering_ENVY_Develope...

Re:The Evolution of Smalltalk from Smalltalk-72 to Squeak [v... by fmakunbound on Friday August 27, 2021 @07:57PM (#28334284)
It’s probably loaded into the image Iceberg-style. Git is just a backend to persist to, that way.