Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You can't shrink wrap because …?


Requiring megabytes for a base system image (although it could be stripped and compressed) the Smalltalk runtime was once considered too large to be shipped with individual apps, and apps tended to be slow and unresponsive compared to compiled C apps. There may also have been licensing issues with shipping a runtime environment.

Fast forward to 2022. Compared to current app sizes, it's laughably small. Compared to Electron/web apps, it's probably faster and more responsive. And the licensing issues have been solved with open source versions.


iirc Stripping the vendor's development tools avoided "the licensing issues".

iirc Dolphin Smalltalk used windows controls and packed to exe.

iirc Smalltalk/X " translates the input file into temporary c-source file and calls the standard C-compiler cc to create a binary object module."

https://live.exept.de/doc/online/english/programming/stc.man...


Those sound like nice systems and stepstones to where we may be today:

- fully free/open source implementations

- native widget integration (or we don't care anymore because we're used to crappy web apps)

- the resource usage and responsiveness gap between commonly deployed apps (such as JavaScript and web apps) and Smalltalk apps has either evaporated or is less of an issue because of faster hardware and more memory

But as you may be implying, I think that there are additional barriers to Smalltalk being used more commonly, such as unusual syntax, a different workflow compared to Java/Python/Javascript/etc., lack of type safety (note that even Python and Javascript have typed versions while typed Smalltalk doesn't seem to have caught on) and the fact that it's neither considered a web technology, nor is it promoted by influential platform companies. I suspect that the Pharo people might think that Smalltalk has a bad reputation (or something) so they never say "Smalltalk." I tend to think that not calling it Smalltalk leads to a bad outcome of confusion and fragmentation.


> … lack of type safety…

Smalltalk is type safe & not statically checked.

"Type safety is the property that no primitive operation ever applies to values of the wrong type."

page 263 "Programming Languages: Application and Interpretation"

[pdf] https://cs.brown.edu/~sk/Publications/Books/ProgLangs/2007-0...




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

Search: