QotD    "To be or not to be" – Shakespeare
View this PageEdit this PageUploads to this PageHistory of this PageTop of the SwikiRecent ChangesSearch the SwikiHelp Guide
Falsehoods Programmers Believe About Smalltalk based technologies
Last updated at 8:15 am UTC on 22 January 2019
Copy of https://github.com/hernanmd/falsehoods_smalltalk, 22nd Jan 2019

Falsehoods Programmers Believe About Smalltalk based technologies

> Falsehood articles are a form of commentary on a particular subject, and are appreciated by the developer community at large for their effectiveness and terseness. They’re a convenient written form to approach an unfamiliar domain by dispelling myths, point out common pitfalls, show inconsistencies and subtleties.
> In a sense, Falsehood articles are a suite of wordy unit-tests covering extensive edge-cases provided by real-world usage.

General Myths

- Smalltalk is obsolete.
- It doesn't work for real-world development.
- All Smalltalk flavors are image-based.
- Image cannot be bootstrapped.
- All Smalltalks includes UI classes.
- All implementations uses green threads.
- Smalltalk is not used in Big Data Science.
- You cannot use Smalltalk from command line.
- Few libraries in the ecosystem.
- Most implementations do not support Full Closures.
- Most implementations do not support executable generation.
- There are no implementations supporting native widgets.

Reflection Myths

- Metaclasses are necessary to have a working Smalltalk.
- ClassDescription is necessary.
- Behavior is necessary.
- Subclassing Behavior has no use.
- You cannot add hidden behavior to a method.
- You can add it, but you need to recompile the method.
- It is impossible to avoid a hierarchy recompilation when an instance variable is added to a class.

VM Myths

- All Smalltalk bytecode sets are stack-based VM.
- All VM implementations uses bytecodes.
- Bytecodes are always fixed-size.

GC Myths