OPfN wiki

OPfN Wiki

This is a wiki-style knowledge-management system intended to help clarify OPfN's Pallas Operating Function. It is intended to be explored organically as your interest leads you, by clicking on linked articles and exploring backlinksbacklinkstodo In a knowledge management system like this, each document contains a list of "backlinks", which are other documents that link to it. The concept of links are familiar to all web users - references from this document to another. Backlinks are the other side of that: where else has this document been mentioned?.

  • TODO: At the moment, most of the documents are more like simple "definitions". Ideally they would be more like short discussions and explanations (like the below) with links between each other as relevant.
  • TODO: the below needs a reference to SSIsolid-state interpretertodo The below came mostly from an LLM and should be edited (SSI) A computational model that emphasizes deterministic execution, state-based execution. In the context of pallas, the SSI is designed to ensure that every action taken by the system is predictable and reproducible. 1. Deterministic Execution: In an SSI, the output and the new state are entirely determined by the current state and the input. This means that given the same input and initial state, the system will always produce the

PallasPallastodo is a freeFreetodo and open sourceopen sourcetodo Software with source code that is freely available for anyone to view, modify, and distribute., distributeddistributedtodo A system where processing and data are spread across multiple computers connected via a network, (optionally working together as a single entity). operating functionoperating functiontodo Similar in responsibility to an operating system, an "Operating Function" or OF is a pure function that, given a state and an input, produces a new state and an output. In contrast to traditional OSes, an OF is deterministic and ensures that the system's behavior is entirely predictable based on its inputs and current state (NewState, Output) = OperatingFunction(CurrentState, Input) designed for use by individual people, not corporations. It is our belief that a personal internet, composed of personal serverpersonal servertodo An always-on machine (virtual or otherwise) used for hosting personal data, applications and services, permanently available to receive information from external sources. computers entirely owned by normal people, is both possible and desirable.

Pallas runs on the PlunderPlundertodo virtual machinevirtual machinetodo Software emulation of a physical computer that runs an operating system/operating function and applications just like a physical machine, but is isolated from the actual hardware.. Plunder is a solid-state interpretersolid-state interpretertodo The below came mostly from an LLM and should be edited (SSI) A computational model that emphasizes deterministic execution, state-based execution. In the context of pallas, the SSI is designed to ensure that every action taken by the system is predictable and reproducible. 1. Deterministic Execution: In an SSI, the output and the new state are entirely determined by the current state and the input. This means that given the same input and initial state, the system will always produce the: a programming environmentprogramming environmenttodo A set of tools and resources, such as editors, compilers, and debuggers, that developers use to write, test, and debug software applications. which combines automatic orthogonal persistenceorthogonal persistencetodo A concept where data persists (is saved) automatically across program executions, regardless of the data's type or how it is accessed, functional programmingfunctional programmingtodo, and homoiconicityhomoiconicitytodo A property of some programming languages where the code is structured in the same way as its data, making the code manipulable as data.. Imagine an exokernelexokerneltodo An operating system architecture that allows applications, such as unikernels, to manage hardware resources directly, providing minimal abstraction between the hardware and software.-like Scheme lisp machinelisp machinetodo A computer designed to run Lisp efficiently, often providing hardware support for Lisp features. with automatically persisted application state, and you’re not far off the mark. Plunder and Pallas are not the same project, but share some of the same long term goals; Pallas is the first third-party developer to adopt the Plunder software stack.

The main pieces of the Pallas system are:

  • PLANPLANtodo: the data modeldata modeltodo An abstract model that organizes data elements and standardizes how they relate to one another. and graph reductiongraph reductiontodo A method of evaluating expressions by transforming them into simpler forms until the result is obtained. plan system of Plunder
  • SireSiretodo: a functional language, bootstrappedbootstraptodo The process of developing a complex system by starting with a simpler system that can incrementally build itself up to the desired level of complexity from PLAN
  • Cogscogtodo: a microservicesmicroservicestodo An architectural style that structures an application as a collection of small, loosely coupled services that communicate over a network. architecture for development of user spaceuser spacetodo The memory area where application software runs, separate from the kernel space. applications and appliancesappliancestodo Specialized computing devices or software programs designed to perform a specific task. A term often applied to unkernels, especially in MirageOS
  • RuntimeRuntimetodo: the environment on the host OShost OStodo The operating system that runs on the physical hardware and provides the environment for virtual machines or applications to run. in which Pallas runs