Category Archives: Live Programming

Wikilon Dictionary Applications

A repeating cycle of simplification and refinement has fine-tuned Wikilon since I introduced it over a year ago. One area where Wikilon has changed significantly is its application model, that is: how I expect to host server-side applications and debugging. … Continue reading

Posted in Language Design, Live Programming, Modularity, State, User Interface | 2 Comments

Introducing Wikilon

I have decided to move forward with a wiki-based development environment for Awelon project, under the name Wikilon. Wikilon will be implemented as a Haskell warp web service using acid-state for persistence and websockets for liveness and reactivity. Wikilon can … Continue reading

Posted in Language Design, Live Programming, Open Systems Programming, User Interface | Tagged , | 3 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

Posted in Language Design, Live Programming, Modularity, Reactive Demand Programming, Stability, Types | 7 Comments

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

Posted in Language Design, Live Programming, Modularity, Open Systems Programming, Stability, State, UserInterface | Leave a comment

Natural Programming Language

A recent essay about why natural language isn’t computer code has been making a few rounds through the PL community. It seems to celebrate the precision required in computer languages, the differences between coders and writers. The article concludes: Fundamentally, … Continue reading

Posted in Language Design, Live Programming, UserInterface | Tagged , , | 4 Comments

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

Stability and RDP

Stability is a valuable property (or set of properties) for any system. For a quick background, I recommend you peruse the Wikipedia articles: metastability, superstabilization, dynamic algorithm, self-stabilization. Stability in different dimensions is discussed with a variety of different names: … Continue reading

Posted in Language Design, Live Programming, Reactive Demand Programming, State | 1 Comment

Data Model Independence

One of the most pervasive and stubborn challenges for open systems development is composing, fusing, adapting, integrating subsystems that use heterogeneous data models for similar tasks. By data model I mean how we group, share, describe, and update data in … Continue reading

Posted in Concurrency, Distributed Programming, Language Design, Live Programming, Modularity, Open Systems Programming, Reactive Demand Programming | Tagged , , , , | Leave a comment