Continuing from last time. Argh, the object runtime though: what do do? How do I even want this to work? Objects are computers. Services (computations) can be requested by sending a message. That's all; the object itself can have internal state (addrs of other objects), but outside one cannot touch the state except indirectly, by … Continue reading Self-commentary: objects-as-computers
Category: Programming
Self-commentary: self-hosting sandbox
Following on from the previous entry. I want an environment where playing with things and creating, editing and debugging is easy and painless, where things are treated uniformly. Similar to [Alan] Kay's ideals. But you want the system to be bootstrappable; as much as possible should be done in the system itself. This basically means: … Continue reading Self-commentary: self-hosting sandbox
Aborted attempt at Greenspunning Java
During summer last year, I was required to use Java for an ill-fated fan project. One that I had foolishly signed up for, in the hopes it would jolt me out of my programming limbo. Instead, it accompanied me into depression! But on the bright side, the sheer frustration I experienced at vainly trying my … Continue reading Aborted attempt at Greenspunning Java
Self-commentary: DM, edit, obj/meta
Following on from previously, thinking about specifying dynamic visual behaviour: I suspect that, if you took all these concepts to their natural conclusion, keeping in mind that the best way to specify visual things is to view—and edit—visually, then you would end up with something much like Adobe Flash Studio. With timelines, tweening, ActionScript, etc. … Continue reading Self-commentary: DM, edit, obj/meta
Self-commentary: notes on graphics
In this series, I'll be reviewing some notes I wrote at the beginning of the year. They should provide useful background for a project I'm tentatively calling BootstrapLab, an introspective software system that will finally liberate me from my programming-vegetative-state. Begin: VPRI wisely identified basic vector graphics as a fundamental base from which to build … Continue reading Self-commentary: notes on graphics
Ideas for Nightfall: Gameplay and misc.
Following from the previous entry. Microcosm, macrocosm Many games have a broad structure linking 'rooms' or 'stages' at one level, and the individual rooms / stages at another level. This often takes on a geographical meaning, where you select, say, a region on the map and then you complete the challenges associated with that area. … Continue reading Ideas for Nightfall: Gameplay and misc.
Ideas for Nightfall: Style, mood etc.
Following from the previous entry: Language that obfuscates and intrigues Deus Ex: Human Revolution (DX:HR) has a foreboding organisation with a foreboding name: Belltower Associates. I love this name, although I can't tell why I like it so much, and I've no idea if it's just me. Anyway, there is a basis set of entangled … Continue reading Ideas for Nightfall: Style, mood etc.
Ideas for Nightfall: Quantum, Concurrency.
I've had these as drafts for nearly a year; time to get it all out there. The motivation for writing what follows was my being stuck in programming-limbo over the past two years or so. Numerous attempts to design the Perfect Language in which to express all the domain concepts had failed. So I just … Continue reading Ideas for Nightfall: Quantum, Concurrency.
What are types? Part 1
There are these things that, depending on your definition, many or all programming languages use: 'types'. There's also a rich mathematical study of types in Type Theory which, along with related disciplines, has many connections to logic and proof. Why? Often, they take the form of explicit 'annotations' to program artefacts, big and small. For … Continue reading What are types? Part 1
Language isn’t everything
Over the past year, I've been completely changed by the knowledge of an entire untold history of things we take for granted—personal computing, object-oriented programming, the GUI. For the vast majority of my coding lifetime, I had considered the act of constructing software as being identical to describing it, using some appropriate or inappropriate language. … Continue reading Language isn’t everything