- Fascinating language
- Exploring smalltalk with squeak
- Working log
- Get the pharo launcher
- install libgit2 – didn't help
- manually copied over libgit2 into the vm for Pharo 8.0
- https://github.com/pharo-project/pharo/issues/4463
- Pharo by example
- Start a "playground" instead of a workspace
- Visualization
- Getting libgit to work correctly: install libcurl-gnutls
- Thinking about kernels
- The biggest difference is that state in the kernel isn't saved
- the order of execution of the kernel changes everything, unlike in
smalltalk
- the kernel of building good, interactive libraries is here
- Ideas I appreciate
- Easy code browser
- Good autocompletion suggestions
- Good syntax highlighting
- Theoretical ability to modify the existing UI with code, because
everything is inspectable: it's pretty much the ideal version of my
self-modifiable UI for internal tools
- Nice inbuilt examples that can be interacted with
- Inbuilt lint as well
- Auto generated uml diagrams
- Exception debugger is very nicely made
- Variable inspector
- Evaluator
- Source code
- Stack trace
- inline Ctrl-P to print out an expression, Ctrl-D
- I can also see it persisting all memory and state to the image,
making an infinitely long lasting kernel which is a step up on
Python notebooks
- The incremental, nested search is amazing and intuitive through
spotter
- Things I disliked
- the sheer number of menus, batman!
- I wouldn't have been able to get started without the introduction
- can't seem to interrupt, multithreading notwithstanding
- execution is just terrible
- aliasing would be amazing to make it feel less amateur
- Things that were interesting
- doing away with the filesystem completely
- git interaction is probably fucked
- this is closer to how we handle models than how we handle code
- it seemed to have worked out well for a couple of years, at least