Archive for January, 2013

Rebooting Encpasule Project for the Web

Repost from:

Welcome to the Encapsule Project.

The Encapsule Project is an open source effort to apply electrical engineering design and modeling techniques to software development.

Quick update:

I’ve been working to re-imagine the Hyperworx prototype, or at least it’s core concepts, using modern web technologies and am preparing to launch a new single-page HTML5 called “schema” that implements an interactive data visualization and editing environment for working with JSON-encoded Soft Circuit Description Language (SDCL (pronounced “scuddle“)) models.

Briefly, “soft circuits” are the software analogue of a digital circuit board schematics. Just as a digital circuit board schematic captures the essence of a system design to be realized in hardware, a “soft circuit” schematic captures the essence of a system design to be realized in software. Given this, SCDL is a JSON serialization dialect for exchanging “soft circuit” schematics across the Internet.

So what do you do with a “software schematic” that is machine-readable? There are a lot of possibilities. But first, we need some SCDL to fuddle with…

SCDL models are cool:

  • SCDL is based fundamentally on Turing Machine models.
  • SCDL can be used to model any system regardless of its scale.
  • SCDL is not tied to a hardware platform, operating system, or programming language.
  • SCDL is not actually even tied to software: it can be used to model hierarchical systems in any domain (although we’re primarily interested in its application to the software domain here).

SCDL is transformative:

SCDL models are machine-readable abstract system specifications which are exactly what’s required to write a software program that transforms SCDL into an executable runtime that implements your design given a binding to a specific target runtime environment.

For example, it would be possible to write a “transformer” that converts SCDL into a C++ program, or creates a single-page HTML5 application that performs the “transformation” on the client by operating directly on the SCDL JSON.Or, on the server via node.js. Or, all of the above. Maybe we want to model our entire cloud-based enterprise in SCDL and “transform” the clients, custom back-end servers that execute app logic on metal, and everything that glues it all together.

The possibilities are endlessly cool. Please stay tune for updates. The SCDL editor is coming soon!

– Chris

Deprecated to ‘Junk':