-
Recent Posts
- Modular Manipulation of the Link-Time Environment
- Why Not FFI
- Declarative State Machines
- Ad-Hoc External State Models
- Progress Report: Loops and Restarts in Sirea
- Objects as Dependently Typed Functions
- Anticipation in RDP Reduced
- Exponential Decay of History, Improved
- Sirea RDP Progress Update: Demand Monitors are Working
- Stateless Sound
Categories
Blogroll
- Lambda the Ultimate
- Duncan Cragg's What not How
- Portland Pattern Repository
- Manuel Simoni's Axis of Eval
- Haskell Reddit
- Rocketnia's Pipe Dreams
- Gilad Bracha's Room 101
- Bret Victor's Worrydream
- Roly Perera's Dynamic Aspects
- Gerold Meisinger's Lambdor Devblog
- Patai Gergely's Just _|_
- Dataspace Project
Meta
Category Archives: Modularity
Modular Manipulation of the Link-Time Environment
I’m in the process of hammering out a concrete design for Awelon, and my design efforts have taken me to some interesting places. My current application model looks like this: An Awelon application consists of a set of anonymous modules. … Continue reading
Posted in Language Design, Modularity, Open Systems Programming, Security, State
3 Comments
Why Not FFI
FFI – foreign function interface – is a common way for new languages to integrate with existing systems. But FFI is problematic in many ways. FFI represents ambient authority (the ability to ‘import’ authority to ad-hoc resources without a specific … Continue reading
Posted in Language Design, Modularity, Open Systems Programming, Security
3 Comments
Ad-Hoc External State Models
Encapsulation, Accessibility, Security One of the main reasons we encapsulate state is to gain more control over how it updates. For example, take your traditional, imperative, mutable state variables that respond to get and put actions. We might use one … Continue reading
Progress Report: Loops and Restarts in Sirea
I’ve been working on Sirea quite a bit in the last few months, albeit making less progress than I had hoped. Mostly, I’ve been running in circles. In Reactive Demand Programming, all loops are indirect, via a shared external resource … Continue reading
Ubiquitous Programming with Pen and Paper
Programming ideas strike at any time – while taking a walk, or standing in line. Meetings, for me, are a common location for programming ideas. A few slides or phrases catch my interest in an otherwise droll and predictable commentary. … Continue reading
Posted in Distributed Programming, Language Design, Modularity, Open Systems Programming, Stability, State, UserInterface
Tagged HCI, ubicomp
5 Comments
Local State is Poison
Up through early 2011, my visions of RDP still called for `new` (as in `new Object()` or `newIORef`). At that time, my vision of an RDP language was a two-layer model: the language would support a separate initialization step for … Continue reading
Posted in Concurrency, Language Design, Modularity, Open Systems Programming, Security, State
35 Comments
Stone Soup Programming
Stone soup programming is meant to evoke an image of throwing software components into a pot – in no particular order, and paying little attention to the ingredients – and the result being a nice application. The glue code between … Continue reading
Stateless Stable Arts for Game Development
In the months since grasping the concept of stateless stable models, I regularly find scenarios where I think, “A stateless stable model would be useful here.” Unfortunately, I’ve not gotten around to implementing these models. (I still haven’t. I might … Continue reading
Life With Objects
This is a wordy response to Chris Turner’s Life Without Objects. Many object models compose poorly. There are no generic methods to combine two objects into a meaningful third. Rather than composition, we get a Cartesian product of specializations (e.g. … Continue reading
Windowed Memoization?
I assume you already know what memoization is and why we might want to use it. In the context of reactive computations, memoization can improve performance a great deal, avoiding recalculation of data that has not changed. Most reactive paradigms, … Continue reading
Posted in Language Design, Live Programming, Modularity, State
8 Comments