What follows is a formatted version of something from a little over a year ago that I mustn't keep hidden away. Because I've grown and changed, I should comment on it. Inline comments from the present look like ((this)). view has dimensions; width and height (in pixels, yuck) of its exclusive region of visual real-estate … Continue reading Self-commentary: composites, contexts, reps
Category: Programming
Notes infodump: programming
The primary aim of expository work should not be to build up 100% watertight proofs or refutations of things we suspect are true. Instead the real value is giving people ideas. In the sense of, writing material that naturally suggests and brings out certain lines of inquiry. The hard parts of filling in the details, are also the least … Continue reading Notes infodump: programming
Reading the Sketchpad Thesis
Shortly after starting my SVG work, I realised I just had to read Ivan Sutherland's 1963 thesis. (I really ought to have already done so, and this was the final kick.) Sadly, it is somewhat hard to read owing to the fact that many fundamental programming concepts had not even been invented back then. And @Pavel, … Continue reading Reading the Sketchpad Thesis
Back to bootstrapping
Periodically I must snap myself back into recognising my real aim: to experience the traditional process of bootstrapping, but by doing as much as possible in a "live" system that I can see, feel and persist without touching a single line of "code". After re-orienting myself towards this, I am carefully designing a way to … Continue reading Back to bootstrapping
Ideas for a “human-friendly” “dumb” substrate
What distinguishes the computer medium from all the others? What constitutes a "simulator"? What's the minimal "machinery" needed? The Church-Turing thesis says: it's the Turing machine. This does depend on what you mean by "minimal" or "simplest". I actually think that the random-access Register Machine is the best place to start, and I view the … Continue reading Ideas for a “human-friendly” “dumb” substrate
Looking back on Object-Orientated Programming
As we move into the Spring (no pun intended), I thought it'd be nice to trace the history of a major paradigm shift in the way we write code. It is responsible for sparking the (Personal) Computer Revolution that gave us the atmosphere of unbridled innovation we enjoy today, and it's widely known as Object-Orientated Programming. … Continue reading Looking back on Object-Orientated Programming
The untapped power of universal simulation
OROM is a mixed bag. On the one hand, it "brings forth" many fruitful ideas I wouldn't have had otherwise. On the other, it is hampered and held back by its rather low-level implementation. There may have been an excuse for this when it was published, but I do not have one today. Consider "the … Continue reading The untapped power of universal simulation
4. Towards a general theory of bootstrapping
(EDIT: unfortunate title. It represents more of a desire than something that I actually accomplished - lol) I think that version 0 of my self-improving system is finished. It is a hacked-together yet working version of OROM in the browser. Now I would like to reflect upon and analyse what I've done, because I now have … Continue reading 4. Towards a general theory of bootstrapping
3. Hacking together OROM/(DOM+Ctrl+Shift+J)
Considerations, and rough devlog, for implementing the Id object system described in Open, Reusable Object Models (and related material) in an already-existing visual interactive platform: Objects and vtables An object is a bunch of mutable state (1). In every object A, there is a special part of this state that points to another object (2). This is called the vtable of … Continue reading 3. Hacking together OROM/(DOM+Ctrl+Shift+J)
[Draft] Make use of what already exists!
Up till recently I'd had roughly the following plan: Use JS, the console and Canvas to build a "mark 0" retained-mode graphics system Use the graphics system to build stuff, e.g. the Id object model. But now I realise that I was mistaken on two counts. First, given what I'm aiming for in point #2, … Continue reading [Draft] Make use of what already exists!