The Miser Project |
miser>
oMiser>
index>
0.0.4 2024-01-23T17:56Z |
oMiser is constructed as a software library for use on desktop computers. The library employs object-oriented techniques for manifesting ‹ob› = 〈Ob,Of,Ot〉 in a navigational computation interpretation. The obap Universal Computation functions are delivered as oMiser operations.
This topic includes definition of software-library interfaces – the oMiser API – and the derivation of supporting algorithms for manifestation of ‹ob› through the API. This level of computer-program access is often termed an operational model for the manifestation that is achieved.
Releases of the software are provided under the dev topic. Development of the software is managed in the GitHub Repository, along with discussions, projects and issues.
There are a number of challenges in having oMiser operate with excellent performance. The primitive operations defined for ‹ob› are not ideal, being very low-level relative to the power available on today’s computers. Fortunately, faithful interpretation of ‹ob› in a computer manifestation can provide important optimizations behind the scenes of the API.
There are two qualities that oMiser shall always preserve: immutability and idealism.
The API exposes ‹ob› as immutable entities which are always “at hand”, even though there are alterations and accelerations behind the API that improve operation without ever violating immutability of the representation. Accelerators expedite operations behind the scenes. Conservers provide for recovery of computer storage of no-longer reachable ob instances. The design and verification of such optimization techniques is covered here.
When oMiser operates in multiple instances, even when coordinated by local or remote connections, there is semblance of there being only one ‹ob› domain that is navigated by all of the instances. Flavors of distributed operation, even on the same computer, will maintain that appearance.
It is valuable that every ob has an also-immutable applicative interpretation. This allows attaching computer code to ob representations in order to expedite applicative operation. This is valuable obap acceleration.
Although, interpretations of combinators are type-preserving, there is no obvious oMiser mechanism for introduction of identified types and specialized optimization of type-restricted interpretations through their abstraction. It is not possible to escape ‹ob›.
An important improvement would be a means to identify types and somehow guide introduction of machine-language codes for superior representation of rich type interpretations. There is no means of expressing that using oMiser alone. Exploration of how type abstraction can be supported, along with preservation of idealism, will follow availability of oMiser and oFrugal implementations.
This placeholder links to raw materials and notes, including text files. There will be organized folios of content as consolidation of documentation on the web progresses.
ID | Status | Started | Topic |
---|---|---|---|
oMiser.txt | 0.1.2 2023-11-06 | 2017-07-26 | Conception, Definition, and Implementation Notes |
Diary & Job Jar | undated | 2024-01-20 | More notes and work items |
I invite discussion about Miser Project topics in the Discussion section. Improvements and removal of defects in this particular documentation can be reported and addressed in the Issues section. There are also relevant projects from time to time.
You are navigating the Miser Project on Github |
created 2024-01-20 by orcmid |