X-Git-Url: http://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=blobdiff_plain;f=doc%2Findex.org;h=b98cb0428beba5fe1abc4c2894c86f6aa5ec677f;hp=c526378130e01da9a063f73095b9f0bf8a1874dc;hb=3b080e9210fd5ce2de5269e66d3f0e16f7a278a4;hpb=7af03e3a9c0def88ab66972c58afd9c89e4ed618 diff --git a/doc/index.org b/doc/index.org index c526378..b98cb04 100644 --- a/doc/index.org +++ b/doc/index.org @@ -11,128 +11,120 @@ #+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. +- This program is free software: released under Creative Commons Zero + (CC0) license - Program author: - Svjatoslav Agejenko - - Homepage: http://svjatoslav.eu + - Homepage: https://svjatoslav.eu - Email: mailto://svjatoslav@svjatoslav.eu -- [[http://www.svjatoslav.eu/projects/][Other software projects hosted at 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]]. -- [[http://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=snapshot;h=HEAD;sf=tgz][Download latest snapshot in TAR GZ format]] -- [[http://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=summary][Browse Git repository online]] +- [[https://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=summary][Browse Git repository online]] - Clone Git repository using command: - : git clone http://www2.svjatoslav.eu/git/sixth.git + : 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. +Goal is, so called bicycle for the mind. -[[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. +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: +[[id:c19c5a3b-dfb0-4f7f-961c-a387b925669f][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: - - [[http://www3.svjatoslav.eu/projects/sixth-3d/][Realtime 3D graphics]] with immediate feedback loop. ++ Makes data and insights easy to discover, understand, manipulate, + transform and visualize. + ++ Workflow and user interface is intuitive, visual, realtime, + 3D-first. #+BEGIN_QUOTE “Virtual reality holds the key to the evolution of the human mind” Dr. Lawrence Angelo, The Lawnmower Man (1992) #+END_QUOTE -+ [[http://www3.svjatoslav.eu/projects/sixth-data/][Flexible and distributed computation and data storage]]. ++ Computations are done primarily in [[https://www3.svjatoslav.eu/projects/sixth-data/][on versioned data in distributed, + scalable, arbitrary dimensional hypercube based geometrical + computation engine]]. + ++ Free and open. -+ Cross device: - + Easily switch and/or combine computers to work seamlessly on any - tasks. ++ Network first: + + Cross device: + + Easily switch devices and still access same data, workspaces and + visualizations. + + Easily access and combine storage and computing resources of + other connected devices. - + User interface, data, software, running proceses and available - computing power is not contained or limited by boundaries of any - single device. + + Ability to collaborate (multi user). ** 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. ++ [[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]]. 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. + ++ [[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. One can develop Eclipse plugins to add + necessary logic and visual parts to fit any problem. (IntelliJ and + NetBeans have similar properties) + ++ [[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. You can build distributed business applications on it + as a platform. + ++ [[https://en.wikipedia.org/wiki/ABAP][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. + ++ [[https://en.wikipedia.org/wiki/Microsoft_Access][Microsoft Access]] - Database management system that combines + relational database engine with a graphical user interface and + software-development tools. * 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 ! :) + and almost non-existent free time available). Contributions are + welcome ! * Architecture / components :PROPERTIES: :ID: 52dbbf4c-2ef4-42a6-8331-ad006b6a52ae :END: -+ [[http://www3.svjatoslav.eu/projects/sixth/][Sixth]] - Parent project. - + [[http://www3.svjatoslav.eu/projects/sixth-data/][Sixth Data]] - Data storage and computation engine. - + [[http://www3.svjatoslav.eu/projects/sixth-3d/][Sixth 3D]] - 3D engine - for user interface and data visualization. - + [[http://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. ++ [[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. * 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 [[http://www3.svjatoslav.eu/projects/fifth/][Fifth]] + 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. + - Forth/Fifth felt a bit too low-level language. So current + project/approach is an attempt using Java.