X-Git-Url: http://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=blobdiff_plain;f=doc%2Findex.html;h=de3280705192078dae446f3039d11604af99a5d1;hp=67d84b5cef68d10de3d6e3b7c073ebd28ba23915;hb=HEAD;hpb=7af03e3a9c0def88ab66972c58afd9c89e4ed618 diff --git a/doc/index.html b/doc/index.html index 67d84b5..168dd1e 100644 --- a/doc/index.html +++ b/doc/index.html @@ -1,12 +1,198 @@ - - + + + + + + Sixth - system for data storage, computation, exploration and interaction - - - - - + + + @@ -14,453 +200,295 @@ footer {background-color: #111 !important;} pre {background-color: #111; color: #ccc;} - - + -
-

Sixth - system for data storage, computation, exploration and interaction

+
+

Sixth - system for data storage, computation, exploration and interaction

+ -
-

1 General

+
+

1. General

-
  • Other software projects hosted at svjatoslav.eu -
  • +
  • Other software projects hosted at svjatoslav.eu
  • -
    -

    1.1 Source code

    +
    +

    1.1. Source code

    -
    -

    2 Vision - A tool to amplify human ability

    +
    +

    2. Vision - A tool to amplify human ability

    -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. +Goal is, so called bicycle for the mind.

    -See extensible, programmable computing environment examples. In each -case you can install or develop plugins/extensions for every purpose -imaginable. +A tool, that provides powerful, extensible, adaptable, hackable, easy +to use, general purpose computing environment for working with +knowledge.

    -I would like to create better general purpose environment with the -following properties: +See extensible, programmable computing environment examples.

    -
      -
    • Makes lots of complex data intuitive to: -
        -
      • explore, understand -
      • -
      • manipulate and compute on -
      • -
      -
    • +

      +I would like to create better general purpose computing environment +with the following priorities: +

      -
    • Extensively relying on: +
    • Makes data and insights easy to discover, understand, manipulate, +transform and visualize.
    • + +
    • +Workflow and user interface is intuitive, visual, realtime, +3D-first. +

      +

      “Virtual reality holds the key to the evolution of the human mind” Dr. Lawrence Angelo, The Lawnmower Man (1992)

      -
      -
    • + -
    • Flexible and distributed computation and data storage. -
    • +
    • Computations are done primarily in on versioned data in distributed, +scalable, arbitrary dimensional hypercube based geometrical +computation engine.
    • +
    • Free and open.
    • + +
    • Network first: +
      • 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. -
        • -
        -
      • +
      • Easily switch devices and still access same data, workspaces and +visualizations.
      • +
      • Easily access and combine storage and computing resources of +other connected devices.
      • +
    • + +
    • Ability to collaborate (multi user).
    • +
    -
    -

    2.1 Extensible, programmable computing environment examples

    +
    +

    2.1. Extensible, programmable computing environment examples

    -
    -
    GNU Emacs
    At the heart, Emacs is text editor on top of Lisp -runtime. Data storage and computation can be done in -Lisp. Emacs provides text buffers that can be used to -build GUI. -
    - -
    Eclipse IDE
    In essence OSGi platform with a text -editor. Computation done in java. Eclipse provides -integration, runtime and GUI platform. -
    - -
    IBM Notes/Domino
    Custom database engine, software development +
      +
    • GNU Emacs - At the heart, Emacs is text editor on top of Lisp +runtime. Data storage and computation can be done in Lisp. Lisp is +on itself programmable programming language where new paradigms can +be added dynamically. Domain specific languages to fit particular +problem could be developed as needed and Emacs extended to support +those languages. Emacs provides text buffers that can be used to +build user interfaces. So you can customize Emacs and Lisp to fit +any problem domain.
    • + +
    • Eclipse IDE - In essence OSGi platform with a text +editor. Computation done in java. Eclipse provides integration, +runtime and GUI platform. One can develop Eclipse plugins to add +necessary logic and visual parts to fit any problem. (IntelliJ and +NetBeans have similar properties)
    • + +
    • IBM Notes/Domino - Custom database engine, software development platform, GUI editor, computation can be done in Java and -LotusScript. -
    +LotusScript. You can build distributed business applications on it +as a platform. + +
  • SAP ABAP - Custom database engine, runtime, GUI platform, +development environment and programming language. Is being used as a +platform to build business applications with any logic and UI.
  • -
    SAP ABAP
    Custom database engine, runtime, GUI platform, -development environment and programming language. -
    -
    +
  • Microsoft Access - Database management system that combines +relational database engine with a graphical user interface and +software-development tools.
  • +
    -
    -

    3 Current status

    +
    +

    3. Current status

      -
    • Formulated high-level vision / goal. -
    • +
    • Formulated high-level vision / goal.
    • -
    • In the process of implementing some of building blocks. -
    • +
    • In the process of implementing some of building blocks.
    • System is nowhere near complete (given magnitude of effort required -and my free time available). Contributions welcome ! :) -
    • +and almost non-existent free time available). Contributions are +welcome !
    -
    -

    4 Architecture / components

    +
    +

    4. Architecture / components

      -
    • Sixth - Parent project. +
    • Sixth - Parent project.
        -
      • Sixth Data - Data storage and computation engine. -
      • -
      • Sixth 3D - 3D engine - for user interface and data visualization. +
      • Sixth Data - Data storage and computation engine.
      • +
      • Sixth 3D - 3D engine - for user interface and data visualization. -
      • -
      -
    • +
    • Sixth 3D engine demos - Demonstration of Sixth 3D engine capabilities.
    • +
    +
    -
    -

    5 Computation ideas

    + +
    +

    5. Frequently Given Answers

      -
    • Program - stored instructions for execution by computer. -
    • - -
    • Process - Currently running program. +
    • Why such name ?
        -
      • Process is self contained. Has a full copy of program code and -every dependent library. +
      • In short: it's just a number.
      • +
      • Many years ago inspired by the ideas of Forth (programming +language) I decided to create my own implementation Fifth +(computing/programming environment).
      • +
      • Forth/Fifth felt a bit too low-level language. So current +project/approach is an attempt using Java.
      • +
    • +
    +
    +
    +
    +

    6. See also

    +
    +

    +Following projects are inspiring or have similar goals: +

      -
    • Memory used by processes is content addressed/deduplicated at -low level in the system. -
    • +
    • kons-9: An IDE For 3D Production. The intention is to develop a +flexible and extensible system in which can be built a wide variety +of application and domain specific tools and packages.
    • + +
    • Glamorous Toolkit: Moldable development environment. It is a live +notebook. It is a flexible search interface. It is a fancy code +editor. It is a software analysis platform. It is a data +visualization engine. All in one.
    • +
    +
    -
  • This allows: +
    +

    6.1. Computation on multi dimensional data

    +
      -
    • Upgrading software installed in the system without breaking -already running processes. -
    • - -
    • Easier migration of running processes between physical -computers. -
    • +
    • Array Databases: Concepts, Standards, Implementations
    • -
    • Possibility to suspend/resume arbitrary processes to permament -storage. -
    • +
    • TileDB +
        +
      • Analyze and share complex multi-dimensional data at scale
      • +
    • -
    • Possibility checkpoint/revert running process. -
    • +
    • CM-1 Connection Machine
    • -
    • Possibility to clone/branch running process. -
    • -
    -
  • - - - - +
  • Lisp-Stat: An environment for Statistical Computing
  • +
    +

    6.2. Distributed, reliable, parallel computing systems

    +
    +
      +
    • ChrysaLisp +
        +
      • Assembler/C-Script/Lisp 64 bit, MIMD, multi CPU, multi threaded, +multi core, multi user Parallel OS. With GUI, Terminal, OO +Assembler, Class libraries, C-Script compiler, Lisp interpreter, +Debugger, and more…
      • +
    • -
      -

      6 Frequently Given Answers

      -
      +
    • TAOS
        -
      • Why such name ? +
      • Completely distributed operating system/virtual machine:
      • +
    • + +
    • Gemstone/S
        -
      • In short: it's just a number. -
      • -
      • Many years ago inspired by the ideas of Forth (programming -language) I decided to create my own implementation 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. -
      • -
      -
    • +
    • Completely distributed smalltalk based computing +system.
    • +
    + +
  • http://phantomos.org/ +
      +
    • Programs run forever. System crash or reboot does not destroy +state of running program.
    • +
  • + +
  • Magma +
      +
    • Multi-user object database for Squeak
    • +
  • -
    -
    -

    Author: Svjatoslav Agejenko

    -

    Created: 2018-12-17 Mon 20:57

    -

    Emacs 25.2.2 (Org-mode 8.2.10)

    -
    +
    +

    Author: Svjatoslav Agejenko

    +

    Created: 2022-10-30 Sun 12:26

    +

    Validate

    +