Category Archives: Security

Abstract Awelon Virtual Machines

I’m still working towards Wikilon, a wiki-based development environment and initial software platform for the Awelon project. The design is still fluid, and has taken me in some interesting and unconventional directions on the ‘development environment’ side. On the ‘software … Continue reading

Posted in Concurrency, Modularity, Open Systems Programming, Security, State | 10 Comments

Wikilon Filesystem

Wikilon isn’t just an online dictionary for AO code. It will offer a simple filesystem-like abstraction, allowing use as a software platform for creating interesting applications and services. Simple isn’t easy. I’ve spent a great many hours designing, refining, and … Continue reading

Posted in Language Design, Security, Stability | 4 Comments

ABC Linking with Provider Independent Security

As I’ve mentioned in other posts, Awelon Bytecode (ABC) has a non-conventional approach to code reuse. A valid sequence of bytecode can be given a deterministic, cryptographically unique name – e.g. a secure hash. In ABC, the code to invoke … Continue reading

Posted in Distributed Programming, Language Design, Modularity, Open Systems Programming, Security | Tagged , , , | 5 Comments

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

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 | 48 Comments

Social Aspects of PL Design

Software development is ultimately a social experience. And I’m not just talking about teams of coders. Even sharing or using code via library, or services via API, is a social experience involving communication and relationships between humans. Consequently, there exists … Continue reading

Posted in Language Design, Modularity, Open Systems Programming, Security | 1 Comment