https://github.com/hernanmd/falsehoods_smalltalk
Falsehoods Programmers Believe About Smalltalk
https://github.com/hernanmd/falsehoods_smalltalk
Last synced: 5 months ago
JSON representation
Falsehoods Programmers Believe About Smalltalk
- Host: GitHub
- URL: https://github.com/hernanmd/falsehoods_smalltalk
- Owner: hernanmd
- License: mit
- Created: 2019-01-20T22:12:25.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-02-03T19:55:59.000Z (over 7 years ago)
- Last Synced: 2025-09-13T01:37:21.252Z (10 months ago)
- Size: 11.7 KB
- Stars: 5
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 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.
- Smalltalk is a programming language.
- It doesn't work for real-world development.
- All Smalltalk flavors are image-based.
- A Smalltalk 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.
- There are 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.
# GC & Efficency Myths
- Smalltalk is less efficient than "low-level" languages.
- Smalltalk can't do "real time."
- Garbage collection is less efficient than manual memory management.
- Garbage collection is really slow if you use complex data structures.
# Acknowledgements
- Eliot Miranda
- Jecel Assumpcao Jr.
- Reinout Heeck
- Stephen Pope
- Hernán Morales Durand