#+TITLE: Sixth - system for data storage, computation, exploration and interaction
* (document settings) :noexport:
** use dark style for TWBS-HTML exporter
#+HTML_HEAD:
#+HTML_HEAD:
#+HTML_HEAD:
#+HTML_HEAD:
* General
- This program is free software: you can redistribute it and/or modify
it under the terms of the [[https://www.gnu.org/licenses/lgpl.html][GNU Lesser General Public License]] as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
- Program author:
- Svjatoslav Agejenko
- Homepage: https://svjatoslav.eu
- Email: mailto://svjatoslav@svjatoslav.eu
- [[https://www.svjatoslav.eu/projects/][Other software projects hosted at svjatoslav.eu]]
** Source code
+ Note - Sixth is currently empty parent/shell project. You can find
working code under [[id:52dbbf4c-2ef4-42a6-8331-ad006b6a52ae][sub-projects]].
- [[https://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=snapshot;h=HEAD;sf=tgz][Download latest snapshot in TAR GZ format]]
- [[https://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=summary][Browse Git repository online]]
- Clone Git repository using command:
: git clone https://www2.svjatoslav.eu/git/sixth.git
* Vision - A tool to amplify human ability
:PROPERTIES:
:ID: 1f4e1c17-d25f-4d92-aa9b-5785f1d86f4f
:END:
Idea is to design all encompassing, flexible and powerful virtual
environment where I can live in and very efficiently do all my
computing tasks enjoyably and with playful ease.
[[id:c19c5a3b-dfb0-4f7f-961c-a387b925669f][See extensible, programmable computing environment examples]]. In each
case you can install or develop plugins/extensions for every purpose
imaginable.
I would like to create better general purpose environment with the
following properties:
+ Makes lots of complex data intuitive to:
- explore, understand
- manipulate and compute on
+ Extensively relying on:
- [[https://www3.svjatoslav.eu/projects/sixth-3d/][Realtime 3D graphics]] with immediate feedback loop.
#+BEGIN_QUOTE
“Virtual reality holds the key to the evolution of the human mind”
Dr. Lawrence Angelo, The Lawnmower Man (1992)
#+END_QUOTE
+ [[https://www3.svjatoslav.eu/projects/sixth-data/][Flexible and distributed computation and data storage]].
+ Cross device:
+ Easily switch and/or combine computers to work seamlessly on any
tasks.
+ User interface, data, software, running proceses and available
computing power is not contained or limited by boundaries of any
single device.
** Extensible, programmable computing environment examples
:PROPERTIES:
:ID: c19c5a3b-dfb0-4f7f-961c-a387b925669f
:END:
+ [[https://www.johndcook.com/blog/2008/04/27/one-program-to-rule-them-all/][GNU Emacs]] - At the heart, Emacs is text editor on top of Lisp
runtime. Data storage and computation can be done in [[https://www.defmacro.org/ramblings/lisp.html][Lisp]]. Emacs
provides text buffers that can be used to build GUI.
+ [[https://www.eclipse.org/ide/][Eclipse IDE]] - In essence [[https://en.wikipedia.org/wiki/OSGi][OSGi]] platform with a text
editor. Computation done in java. Eclipse provides integration,
runtime and GUI platform.
+ [[https://en.wikipedia.org/wiki/IBM_Notes][IBM Notes/Domino]] - Custom database engine, software development
platform, GUI editor, computation can be done in Java and
LotusScript.
+ [[https://en.wikipedia.org/wiki/ABAP][SAP ABAP]] - Custom database engine, runtime, GUI platform,
development environment and programming language.
* Current status
+ Formulated high-level [[id:1f4e1c17-d25f-4d92-aa9b-5785f1d86f4f][vision / goal]].
+ In the process of implementing some of [[id:52dbbf4c-2ef4-42a6-8331-ad006b6a52ae][building blocks]].
+ System is nowhere near complete (given magnitude of effort required
and my free time available). Contributions welcome ! :)
* Architecture / components
:PROPERTIES:
:ID: 52dbbf4c-2ef4-42a6-8331-ad006b6a52ae
:END:
+ [[https://www3.svjatoslav.eu/projects/sixth/][Sixth]] - Parent project.
+ [[https://www3.svjatoslav.eu/projects/sixth-data/][Sixth Data]] - Data storage and computation engine.
+ [[https://www3.svjatoslav.eu/projects/sixth-3d/][Sixth 3D]] - 3D engine - for user interface and data visualization.
+ [[https://www3.svjatoslav.eu/projects/sixth-3d-demos/][Sixth 3D engine demos]] - Demonstration of Sixth 3D engine capabilities.
* Computation ideas
+ Program - stored instructions for execution by computer.
+ Process - Currently running program.
+ Process is self contained. Has a full copy of program code and
every dependent library.
+ Memory used by processes is content addressed/deduplicated at
low level in the system.
+ This allows:
+ Upgrading software installed in the system without breaking
already running processes.
+ Easier migration of running processes between physical
computers.
+ Possibility to suspend/resume arbitrary processes to permament
storage.
+ Possibility checkpoint/revert running process.
+ Possibility to clone/branch running process.
* Frequently Given Answers
- Why such name ?
- In short: it's just a number.
- Many years ago inspired by the ideas of [[https://en.wikipedia.org/wiki/Forth_(programming_language)][Forth (programming
language)]] I decided to create my own implementation [[https://www3.svjatoslav.eu/projects/fifth/][Fifth]]
(computing/programming environment).
- Then I realized I miss type safe object oriented capabilities. So
I updated the name to Sixth and switched to Java.