Joel Shellman
Last updated at 1:30 am UTC on 17 January 2006
Newcomer to Smalltalk and Squeak but jumping right in. Currently working on a real time ray tracing engine. I'm crazy enough to think it's possible (lots of ideas), and we'll see what happens.
I've been doing lots of Java development for the past 6 years or so. Currently in Philomath, Oregon, but relocating to northern Virginia Sept. 2003.
I hope it's okay if I use this Swiki for my random ramblings. They aren't all Squeak specific, but they do have to do with software development in general and I plan on using Squeak for these projects.
Of course, I'm going to need to use plugins to get sufficient speed to do the ray tracing, so I'm writing up what I hope will be an up to date and useful Joel Shellman
Okay, I'm going to be jumping around, now I'm working on some knowledge modelling/machine learning/hard to describe at this point stuff. So here are some of my machine learning ramblings.
Here's my generic Q&A as I learn things and maybe I'll categorize them as I go:
Q: How do I programmatically create a class?
A: Execute the following code anywhere:
Object subclass: #YourNewClassName
instanceVariableNames: 'instanceVariableNames delimited by spaces'
classVariableNames: 'Class vars'
poolDictionaries: 'Pool Dictionaries'
category: 'Category this class will end up in'
Q: How do I add a method to an existing class:
A1: To add instance methods:
| selector methodDefinition |
methodDefinition _ 'newMethod | temp | temp _ ''blue''. ^temp.'.
selector _ (Parser new parseSelector: methodDefinition).
selector := TestClass
compile: methodDefinition
classified: 'testing'.
A2: To add class methods:
| selector methodDefinition |
methodDefinition _ 'newMethod | temp | temp _ ''blue''. ^temp.'.
selector := TestClass
compile: methodDefinition
classified: 'testing'.