Smalltalk72
squeak.org
Smalltalk72 | squeak.org | |
---|---|---|
1 | 22 | |
4 | 36 | |
- | - | |
10.0 | 6.9 | |
about 5 years ago | 2 months ago | |
TeX | ||
- | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Smalltalk72
-
What are some important differences between the popular versions of OOP (e.g. Java, Python) vs. the purist's versions of OOP (e.g. Smalltalk)?
I recommend reading through the source files (called ALLDEFS) for various Smalltalk versions, just to get an understanding of how the system is pulling itself up by its bootstraps. Smalltalk-72 is supposedly most in line with Alan Kay's ideals, and its bootstrap can be found here. I also recommend setting up a VM (such as Contralto) to try out some older, simpler versions. Lastly, the Little Smalltalk is a complete system in a few thousand lines of C, making it very understandable. There are various versions, and I don't have a link on hand, but I believe LST4 is the most understandable and easy to compile on Linux.
squeak.org
- [Q] alternative implementation to IBM Smalltalk
-
Old version of offline Scratch that had a secret OS
Also, it's not really an "operating system", nor was it implemented by the ST. It's just part of Squeak (you got the name right), the "engine" Scratch 1.x was made with (which lets you edit the code in the same window it's running in).
-
Ask HN: Alternatives to organizing code in files and folders?
Just downloaded https://squeak.org/ to play around with this concept.
I wonder if there is already a modern tool/suite for Node/Python inspired by Smalltalk...
-
What are some important differences between the popular versions of OOP (e.g. Java, Python) vs. the purist's versions of OOP (e.g. Smalltalk)?
AFAIK the major SmallTalk distributions are https://squeak.org/ and https://pharo.org/. I've heard that Pharo is more complex and "practical", while Squeak is more educational and beginner-friendly. But both stick to their roots with "everything is an object or method", extreme reflection, and integrated runtime/IDE.
-
Ask HN: What software stack to select for this boot to code computer?
Your concept looks nice, it reminds me a bit of the Lisperati: https://www.hackster.io/news/the-lisperati1000-is-a-cyberdec...
So, did you consider Lisp or maybe Smalltalk? Plan 9 or Inferno might also be options.
Plan 9 comes in different variants, the "classic" one (with a Raspberry Pi port by Richard Miller) or 9front, an Inferno porting tutorial can be found at https://github.com/yshurik/inferno-rpi
Lisp and Smalltalk can run with or without Linux underneath, e.g. on the Raspberry Pi.
Bare-metal Lisp is available with interim: http://interim-os.com
Finally, bare-metal Smalltalk is available in my crosstalk system: https://github.com/michaelengel/crosstalk
Of course, Lisp and Smalltalk can also run hosted under Linux, e.g. using Squeak (https://squeak.org), Pharo (https://pharo.org) or InterLisp (https://github.com/Interlisp/medley).
Or - a crazy idea - build an emacs-only machine. That would be fun! :)
-
Squeak Morphic Layers
This repository contains multiple projects closely related to (hardware-accelerated) rendering in Squeak/Smalltalk.
-
Squeak Graphics OpenGL
Packages related to using OpenGL in Squeak/Smalltalk.
-
Smalltalk-80 on Raspberry Pi: A Bare Metal Implementation
Author here, feel free to ask any questions you have :).
It's amazing this little project shows up again here. So far, I received a lot of very positive and friendly feedback about this little pet project of mine.
The whole project would not have been possible without the work of Rene Stange, who created the circle bare-metal library for the Raspberry Pi (https://github.com/rsta2) and Dan Banay, who created a C++ implementation of the Smalltalk-80 VM (https://github.com/dbanay/Smalltalk). I mostly hacked together some glue code...
If you want to dig deeper, the Blue Book by Adele Goldberg and David Robson (scan provided by Stephane Ducasse, thanks a lot!) is _the_ reference on both the language and the structure and implementation of the underlying bytecode VM: http://stephane.ducasse.free.fr/FreeBooks/BlueBook/Bluebook....
Beware, though it's fully functional, crosstalk is still limited by constraints of the original Smalltalk 80 system - e.g. in terms of color (black and white only), possible screen resolution (2^20 pixels, the system crashes if you try to increase the resolution beyond this) and available memory (~1 MB!).
Nevertheless, I think it's a rather authentic reproduction of a more than 40 year old system and I learned (in a comment thread on a completely different topic) that one of our fellow hackernews regulars used it to teach his kid Smalltalk programming - love it! I haven't tried to optimize it significantly, so there's no JIT compiler or bitblit acceleration using the Raspberry Pi GPU.
There's a more modern bare-metal Smalltalk implementation based on Squeak (https://squeak.org) for the Raspberry Pi by Pablo Marx, though this seems to have some stability problems according to the author: https://github.com/pablomarx/RaspberrySqueak
Finally, if you are interested in alternative bare-metal language/OS environments for the Raspberry Pi, you could also give Lukas Hartmann's (of MNT Reform notebook fame) Interim OS a try: http://interim-os.com
-
Ask HN: Programming Without a Build System?
Came here to mention Smalltalk. In things like Smalltalk-80 and Squeak, there was no build system, there are no source code files, there isn't anything but the Smalltalk Development Environment. With something like ENVY/Developer, building involved generating an exported image from the environment.
If OP wants to try it: https://squeak.org/
-
Programming Portals
She missed the biggest ‚programming portal‘ of all: Squeak (Smalltalk) (https://squeak.org/)
Inspecting objects, ‚live‘ coding, a GUI that's intimately tied to its CLI - that's exactly Squeak!
The Morphic UI: http://wiki.squeak.org/squeak/1870
What are some alternatives?
smalltalk - GNU Smalltalk
pharo - Pharo is a dynamic reflective pure object-oriented language supporting live programming inspired by Smalltalk.
pldb - PLDB: a Programming Language Database. A computable encyclopedia about programming languages.
Cuis-Smalltalk-Dev - Active development of Cuis Smalltalk
poprc - A Compiler for the Popr Language
Dolphin - Dolphin Smalltalk Core Image
Smalltalk - Parser, code model, interpreter and navigable browser for the original Xerox Smalltalk-80 v2 sources and virtual image file
pharo - The Sources for Pharo
site - Код главной страницы сайта oberon.org
instant.io - 🚀 Streaming file transfer over WebTorrent (torrents on the web)
Sandstorm - Sandstorm is a self-hostable web productivity suite. It's implemented as a security-hardened web app package manager.
llvm-mingw - An LLVM/Clang/LLD based mingw-w64 toolchain