
Byte Magazine – Smalltalk (1981) - tosh
https://archive.org/details/byte-magazine-1981-08
======
travisgriggs
I’m always amused that this is called a magazine. At least this particular
issue. It’s nearly 500 pages long!!

My favorite chapter in the tome is the one by Peter Deutsch on control
structures. Starts on page 322. I did Smalltalk for 20 years. I don’t have
right words to express how much I loved the Smalltalk block closure, the fact
that it was a reified object type that you could extend and use
polymorphically is one of the unsung geniuses in Smalltalk. Every time I use
python lambdas or Swift’s closures or Kotlin’s closures (the three closure
enabled languages I use most today), I just sigh and wish.

~~~
protomyth
_I’m always amused that this is called a magazine. At least this particular
issue. It’s nearly 500 pages long!!_

Those magazine tended to be big, but Byte was at the top of its class. The
only thing bigger I can remember was Computer Shopper, and that was massive.

~~~
seanmcdirmid
Byte had a bit more content, computer shopper was mostly ads.

~~~
analog31
Indeed, it was pretty typical to have a subscription to Byte, but buy an issue
of Computer Shopper just when it was time to get a new computer. That, or see
if someone else already had a recent issue.

~~~
heelix
It was the place to mail order components too! If you were building a system
back in those days, that was one of the better tomes to dig through to find
deals. That was really the only good place to find competitive offerings of a
VESA local bus video card and find venders who you could trust. Good times.

------
robterrell
Byte Magazine had the best covers.

Page 98 has a fascinating Larry Tessler discussion of Smalltalk that includes
a version of his "no modes" rant that later became the foundation of the
Macintosh UX. It's fascinating to read in retrospect... he calls out Alan
Kay's overlapping windows as de facto modes. (I'm trying to image a past where
overlapping windows lost and tiled windows and virtual screens won.)

But the thing I like the most is the ability to write some code in the text
editor, highlight it, and use the "do it" menu command to immediately execute
it. Would be terrible for security... but I want it.

~~~
coldtea
> _But the thing I like the most is the ability to write some code in the text
> editor, highlight it, and use the "do it" menu command to immediately
> execute it. Would be terrible for security... but I want it._

How would it "terrible for security"? It can be done in most text editors like
Vim, Sublime, etc, it's just a menu command / shortcut away.

~~~
twic
I think the idea is that end users would be able to do this in the running
application, because the running application is just another Smalltalk image.

------
dominicl
Smalltalk is an amazing time sink if you can get past the syntax. Having
learned about it with Squeak Smalltalk the first time during University, it
immediately captured my mind. The great collection library, integrated ide,
integrated version control, the absence of files. And most exciting everything
you interact with comes with it's underlying code and can be changed at
runtime.

Unfortunately trying to release a Smalltalk creation into production always
turned out to be the most complex task. Smalltalk is an island. A beautiful
island you can get lost in for years. But still an island.

~~~
floren
> Unfortunately trying to release a Smalltalk creation into production always
> turned out to be the most complex task. Smalltalk is an island. A beautiful
> island you can get lost in for years. But still an island

This was always something which prevented me from really digging deeply into
Smalltalk -- a nagging feeling that I was tossing bits into this VM, and
eventually it'll work the way I want, but it's now bound forever into the
particular VM and that I wouldn't even be able to get a code listing out. I'm
sure I was over-dramatizing the challenges for myself, but I would really be
interested to hear how you actually _do_ get source code out and distribute it
to others.

~~~
scroot
Smalltalk has had code versioning and sharing for a long time now (Envy,
Monticello, etc). But in the past few years Git integration has really taken
off. Pharo uses Iceberg to interact with git and the main image is now
developed exclusively through it.

------
neilv
Look at the effort PARC Smalltalk people put into this Byte magazine issue,
reaching out to the early microcomputer enthusiasts and industry.

Imagine if some of the more powerful early home computers (which often came
with BASIC and nice intro-to-programming manuals) had come with Smalltalk
instead, and the first generation of microcomputer whiz kids had started with
that world of influences.

This Smalltalk issue of Byte was before my time, and I didn't get to use
Smalltalk until a decade later. It was in a class taught by Bob Beck from
Sequent, teaching OO as an adjunct on the side, using Smalltalk, C++, and
object databases. This was one of the most influential classes I ever took. It
also started my open source contribution habit, when I released my class
project, a visual class hierarchy browser for Smalltalk. (A few years later, I
actually had a chance to go work at PARC, in a junior role on a new project,
and my overwhelmingly biggest regret in life was instead choosing to do
something else that also seemed like something one had to go try or always
wonder.)

------
dharmatech
I'm surprised modern SmallTalks (Pharo, Squeak) haven't yet explored optional
types. (Yes, I know about StrongTalk. :-) )

~~~
isr
You may (or may not?) find this interesting, by one of the cuis-smalltalk
maintainers:

[LiveTyping]([https://github.com/hernanwilkinson/LiveTyping](https://github.com/hernanwilkinson/LiveTyping))
is a project which keeps track of types (and shows them to you) as they become
known to the vm.

PS: cuis smalltalk = a less-bloaty "distribution" of squeak

(I say "distribution" rather than fork, as that more closely captures the
spirit. Its just a thorough culling of the core classes, and stripping out of
extraneous stuff - all running on the same squeak vm)

------
asplake
Glorious - how I wish I’d kept mine!

------
gtycomb
In the early 1980's in addition to Smalltalk, the precursors of Haskell such
as Hope, Miranda ... Byte would bring us these research languages and one
would jump in and try them out.

------
watersb
This is the best BYTE issue. Good times.

