1 <?xml version="1.0" encoding="utf-8"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
6 <!-- 2022-10-30 Sun 12:26 -->
7 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
8 <meta name="viewport" content="width=device-width, initial-scale=1" />
9 <title>Sixth - system for data storage, computation, exploration and interaction</title>
10 <meta name="author" content="Svjatoslav Agejenko" />
11 <meta name="generator" content="Org Mode" />
13 #content { max-width: 60em; margin: auto; }
14 .title { text-align: center;
15 margin-bottom: .2em; }
16 .subtitle { text-align: center;
20 .todo { font-family: monospace; color: red; }
21 .done { font-family: monospace; color: green; }
22 .priority { font-family: monospace; color: orange; }
23 .tag { background-color: #eee; font-family: monospace;
24 padding: 2px; font-size: 80%; font-weight: normal; }
25 .timestamp { color: #bebebe; }
26 .timestamp-kwd { color: #5f9ea0; }
27 .org-right { margin-left: auto; margin-right: 0px; text-align: right; }
28 .org-left { margin-left: 0px; margin-right: auto; text-align: left; }
29 .org-center { margin-left: auto; margin-right: auto; text-align: center; }
30 .underline { text-decoration: underline; }
31 #postamble p, #preamble p { font-size: 90%; margin: .2em; }
32 p.verse { margin-left: 3%; }
34 border: 1px solid #e6e6e6;
36 background-color: #f2f2f2;
38 font-family: monospace;
53 background-color: #f2f2f299;
55 pre.src:hover:before { display: inline; margin-top: 14px;}
56 /* Languages per Org manual */
57 pre.src-asymptote:before { content: 'Asymptote'; }
58 pre.src-awk:before { content: 'Awk'; }
59 pre.src-authinfo::before { content: 'Authinfo'; }
60 pre.src-C:before { content: 'C'; }
61 /* pre.src-C++ doesn't work in CSS */
62 pre.src-clojure:before { content: 'Clojure'; }
63 pre.src-css:before { content: 'CSS'; }
64 pre.src-D:before { content: 'D'; }
65 pre.src-ditaa:before { content: 'ditaa'; }
66 pre.src-dot:before { content: 'Graphviz'; }
67 pre.src-calc:before { content: 'Emacs Calc'; }
68 pre.src-emacs-lisp:before { content: 'Emacs Lisp'; }
69 pre.src-fortran:before { content: 'Fortran'; }
70 pre.src-gnuplot:before { content: 'gnuplot'; }
71 pre.src-haskell:before { content: 'Haskell'; }
72 pre.src-hledger:before { content: 'hledger'; }
73 pre.src-java:before { content: 'Java'; }
74 pre.src-js:before { content: 'Javascript'; }
75 pre.src-latex:before { content: 'LaTeX'; }
76 pre.src-ledger:before { content: 'Ledger'; }
77 pre.src-lisp:before { content: 'Lisp'; }
78 pre.src-lilypond:before { content: 'Lilypond'; }
79 pre.src-lua:before { content: 'Lua'; }
80 pre.src-matlab:before { content: 'MATLAB'; }
81 pre.src-mscgen:before { content: 'Mscgen'; }
82 pre.src-ocaml:before { content: 'Objective Caml'; }
83 pre.src-octave:before { content: 'Octave'; }
84 pre.src-org:before { content: 'Org mode'; }
85 pre.src-oz:before { content: 'OZ'; }
86 pre.src-plantuml:before { content: 'Plantuml'; }
87 pre.src-processing:before { content: 'Processing.js'; }
88 pre.src-python:before { content: 'Python'; }
89 pre.src-R:before { content: 'R'; }
90 pre.src-ruby:before { content: 'Ruby'; }
91 pre.src-sass:before { content: 'Sass'; }
92 pre.src-scheme:before { content: 'Scheme'; }
93 pre.src-screen:before { content: 'Gnu Screen'; }
94 pre.src-sed:before { content: 'Sed'; }
95 pre.src-sh:before { content: 'shell'; }
96 pre.src-sql:before { content: 'SQL'; }
97 pre.src-sqlite:before { content: 'SQLite'; }
98 /* additional languages in org.el's org-babel-load-languages alist */
99 pre.src-forth:before { content: 'Forth'; }
100 pre.src-io:before { content: 'IO'; }
101 pre.src-J:before { content: 'J'; }
102 pre.src-makefile:before { content: 'Makefile'; }
103 pre.src-maxima:before { content: 'Maxima'; }
104 pre.src-perl:before { content: 'Perl'; }
105 pre.src-picolisp:before { content: 'Pico Lisp'; }
106 pre.src-scala:before { content: 'Scala'; }
107 pre.src-shell:before { content: 'Shell Script'; }
108 pre.src-ebnf2ps:before { content: 'ebfn2ps'; }
109 /* additional language identifiers per "defun org-babel-execute"
111 pre.src-cpp:before { content: 'C++'; }
112 pre.src-abc:before { content: 'ABC'; }
113 pre.src-coq:before { content: 'Coq'; }
114 pre.src-groovy:before { content: 'Groovy'; }
115 /* additional language identifiers from org-babel-shell-names in
116 ob-shell.el: ob-shell is the only babel language using a lambda to put
117 the execution function name together. */
118 pre.src-bash:before { content: 'bash'; }
119 pre.src-csh:before { content: 'csh'; }
120 pre.src-ash:before { content: 'ash'; }
121 pre.src-dash:before { content: 'dash'; }
122 pre.src-ksh:before { content: 'ksh'; }
123 pre.src-mksh:before { content: 'mksh'; }
124 pre.src-posh:before { content: 'posh'; }
125 /* Additional Emacs modes also supported by the LaTeX listings package */
126 pre.src-ada:before { content: 'Ada'; }
127 pre.src-asm:before { content: 'Assembler'; }
128 pre.src-caml:before { content: 'Caml'; }
129 pre.src-delphi:before { content: 'Delphi'; }
130 pre.src-html:before { content: 'HTML'; }
131 pre.src-idl:before { content: 'IDL'; }
132 pre.src-mercury:before { content: 'Mercury'; }
133 pre.src-metapost:before { content: 'MetaPost'; }
134 pre.src-modula-2:before { content: 'Modula-2'; }
135 pre.src-pascal:before { content: 'Pascal'; }
136 pre.src-ps:before { content: 'PostScript'; }
137 pre.src-prolog:before { content: 'Prolog'; }
138 pre.src-simula:before { content: 'Simula'; }
139 pre.src-tcl:before { content: 'tcl'; }
140 pre.src-tex:before { content: 'TeX'; }
141 pre.src-plain-tex:before { content: 'Plain TeX'; }
142 pre.src-verilog:before { content: 'Verilog'; }
143 pre.src-vhdl:before { content: 'VHDL'; }
144 pre.src-xml:before { content: 'XML'; }
145 pre.src-nxml:before { content: 'XML'; }
146 /* add a generic configuration mode; LaTeX export needs an additional
147 (add-to-list 'org-latex-listings-langs '(conf " ")) in .emacs */
148 pre.src-conf:before { content: 'Configuration File'; }
150 table { border-collapse:collapse; }
151 caption.t-above { caption-side: top; }
152 caption.t-bottom { caption-side: bottom; }
153 td, th { vertical-align:top; }
154 th.org-right { text-align: center; }
155 th.org-left { text-align: center; }
156 th.org-center { text-align: center; }
157 td.org-right { text-align: right; }
158 td.org-left { text-align: left; }
159 td.org-center { text-align: center; }
160 dt { font-weight: bold; }
161 .footpara { display: inline; }
162 .footdef { margin-bottom: 1em; }
163 .figure { padding: 1em; }
164 .figure p { text-align: center; }
165 .equation-container {
171 vertical-align: middle;
176 vertical-align: middle;
180 border: 2px solid gray;
185 { text-align: right; font-size: 70%; white-space: nowrap; }
186 textarea { overflow-x: auto; }
187 .linenr { font-size: smaller }
188 .code-highlighted { background-color: #ffff00; }
189 .org-info-js_info-navigation { border-style: none; }
190 #org-info-js_console-label
191 { font-size: 10px; font-weight: bold; white-space: nowrap; }
192 .org-info-js_search-highlight
193 { background-color: #ffff00; color: #000000; font-weight: bold; }
196 <link href="https://bootswatch.com/3/darkly/bootstrap.min.css" rel="stylesheet">
197 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
198 <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/js/bootstrap.min.js"></script>
199 <style type="text/css">
200 footer {background-color: #111 !important;}
201 pre {background-color: #111; color: #ccc;}
203 <link rel="stylesheet" type="text/css" href="https://thomasf.github.io/solarized-css/solarized-dark.min.css" />
206 <div id="content" class="content">
207 <h1 class="title">Sixth - system for data storage, computation, exploration and interaction</h1>
208 <div id="table-of-contents" role="doc-toc">
209 <h2>Table of Contents</h2>
210 <div id="text-table-of-contents" role="doc-toc">
212 <li><a href="#org24fd601">1. General</a>
214 <li><a href="#org72de14c">1.1. Source code</a></li>
217 <li><a href="#org4ce9455">2. Vision - A tool to amplify human ability</a>
219 <li><a href="#org5adfbed">2.1. Extensible, programmable computing environment examples</a></li>
222 <li><a href="#org81ffca1">3. Current status</a></li>
223 <li><a href="#org72569c2">4. Architecture / components</a></li>
224 <li><a href="#org574658b">5. Frequently Given Answers</a></li>
225 <li><a href="#org6cb6b6d">6. See also</a>
227 <li><a href="#orgc6ff886">6.1. Computation on multi dimensional data</a></li>
228 <li><a href="#org0fcc836">6.2. Distributed, reliable, parallel computing systems</a></li>
235 <div id="outline-container-org24fd601" class="outline-2">
236 <h2 id="org24fd601"><span class="section-number-2">1.</span> General</h2>
237 <div class="outline-text-2" id="text-1">
239 <li>This program is free software: released under Creative Commons Zero
244 <li>Svjatoslav Agejenko</li>
245 <li>Homepage: <a href="https://svjatoslav.eu">https://svjatoslav.eu</a></li>
246 <li>Email: <a href="mailto://svjatoslav@svjatoslav.eu">mailto://svjatoslav@svjatoslav.eu</a></li>
249 <li><a href="https://www.svjatoslav.eu/projects/">Other software projects hosted at svjatoslav.eu</a></li>
253 <div id="outline-container-org72de14c" class="outline-3">
254 <h3 id="org72de14c"><span class="section-number-3">1.1.</span> Source code</h3>
255 <div class="outline-text-3" id="text-1-1">
257 <li>Note - Sixth is currently empty parent/shell project. You can find
258 working code under <a href="#org72569c2">sub-projects</a>.</li>
260 <li><a href="https://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=snapshot;h=HEAD;sf=tgz">Download latest snapshot in TAR GZ format</a></li>
262 <li><a href="https://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=summary">Browse Git repository online</a></li>
265 Clone Git repository using command:
267 <pre class="example">
268 git clone https://www2.svjatoslav.eu/git/sixth.git
274 <div id="outline-container-org4ce9455" class="outline-2">
275 <h2 id="org4ce9455"><span class="section-number-2">2.</span> Vision - A tool to amplify human ability</h2>
276 <div class="outline-text-2" id="text-2">
278 Goal is, so called bicycle for the mind.
282 A tool, that provides powerful, extensible, adaptable, hackable, easy
283 to use, general purpose computing environment for working with
288 <a href="#org5adfbed">See extensible, programmable computing environment examples</a>.
292 I would like to create better general purpose computing environment
293 with the following priorities:
297 <li>Makes data and insights easy to discover, understand, manipulate,
298 transform and visualize.</li>
301 Workflow and user interface is intuitive, visual, realtime,
307 “Virtual reality holds the key to the evolution of the human mind”
308 Dr. Lawrence Angelo, The Lawnmower Man (1992)
312 <li>Computations are done primarily in <a href="https://www3.svjatoslav.eu/projects/sixth-data/">on versioned data in distributed,
313 scalable, arbitrary dimensional hypercube based geometrical
314 computation engine</a>.</li>
316 <li>Free and open.</li>
322 <li>Easily switch devices and still access same data, workspaces and
324 <li>Easily access and combine storage and computing resources of
325 other connected devices.</li>
328 <li>Ability to collaborate (multi user).</li>
333 <div id="outline-container-org5adfbed" class="outline-3">
334 <h3 id="org5adfbed"><span class="section-number-3">2.1.</span> Extensible, programmable computing environment examples</h3>
335 <div class="outline-text-3" id="text-2-1">
337 <li><a href="https://www.johndcook.com/blog/2008/04/27/one-program-to-rule-them-all/">GNU Emacs</a> - At the heart, Emacs is text editor on top of Lisp
338 runtime. Data storage and computation can be done in <a href="https://www.defmacro.org/ramblings/lisp.html">Lisp</a>. Lisp is
339 on itself programmable programming language where new paradigms can
340 be added dynamically. Domain specific languages to fit particular
341 problem could be developed as needed and Emacs extended to support
342 those languages. Emacs provides text buffers that can be used to
343 build user interfaces. So you can customize Emacs and Lisp to fit
344 any problem domain.</li>
346 <li><a href="https://www.eclipse.org/ide/">Eclipse IDE</a> - In essence <a href="https://en.wikipedia.org/wiki/OSGi">OSGi</a> platform with a text
347 editor. Computation done in java. Eclipse provides integration,
348 runtime and GUI platform. One can develop Eclipse plugins to add
349 necessary logic and visual parts to fit any problem. (IntelliJ and
350 NetBeans have similar properties)</li>
352 <li><a href="https://en.wikipedia.org/wiki/IBM_Notes">IBM Notes/Domino</a> - Custom database engine, software development
353 platform, GUI editor, computation can be done in Java and
354 LotusScript. You can build distributed business applications on it
357 <li><a href="https://en.wikipedia.org/wiki/ABAP">SAP ABAP</a> - Custom database engine, runtime, GUI platform,
358 development environment and programming language. Is being used as a
359 platform to build business applications with any logic and UI.</li>
361 <li><a href="https://en.wikipedia.org/wiki/Microsoft_Access">Microsoft Access</a> - Database management system that combines
362 relational database engine with a graphical user interface and
363 software-development tools.</li>
368 <div id="outline-container-org81ffca1" class="outline-2">
369 <h2 id="org81ffca1"><span class="section-number-2">3.</span> Current status</h2>
370 <div class="outline-text-2" id="text-3">
372 <li>Formulated high-level <a href="#org4ce9455">vision / goal</a>.</li>
374 <li>In the process of implementing some of <a href="#org72569c2">building blocks</a>.</li>
376 <li>System is nowhere near complete (given magnitude of effort required
377 and almost non-existent free time available). Contributions are
382 <div id="outline-container-org72569c2" class="outline-2">
383 <h2 id="org72569c2"><span class="section-number-2">4.</span> Architecture / components</h2>
384 <div class="outline-text-2" id="text-4">
386 <li><a href="https://www3.svjatoslav.eu/projects/sixth/">Sixth</a> - Parent project.
388 <li><a href="https://www3.svjatoslav.eu/projects/sixth-data/">Sixth Data</a> - Data storage and computation engine.</li>
389 <li><a href="https://www3.svjatoslav.eu/projects/sixth-3d/">Sixth 3D</a> - 3D engine - for user interface and data visualization.
391 <li><a href="https://www3.svjatoslav.eu/projects/sixth-3d-demos/">Sixth 3D engine demos</a> - Demonstration of Sixth 3D engine capabilities.</li>
398 <div id="outline-container-org574658b" class="outline-2">
399 <h2 id="org574658b"><span class="section-number-2">5.</span> Frequently Given Answers</h2>
400 <div class="outline-text-2" id="text-5">
404 <li>In short: it's just a number.</li>
405 <li>Many years ago inspired by the ideas of <a href="https://en.wikipedia.org/wiki/Forth_(programming_language)">Forth (programming
406 language)</a> I decided to create my own implementation <a href="https://www3.svjatoslav.eu/projects/fifth/">Fifth</a>
407 (computing/programming environment).</li>
408 <li>Forth/Fifth felt a bit too low-level language. So current
409 project/approach is an attempt using Java.</li>
414 <div id="outline-container-org6cb6b6d" class="outline-2">
415 <h2 id="org6cb6b6d"><span class="section-number-2">6.</span> See also</h2>
416 <div class="outline-text-2" id="text-6">
418 Following projects are inspiring or have similar goals:
422 <li><a href="https://github.com/kaveh808/kons-9">kons-9</a>: An IDE For 3D Production. The intention is to develop a
423 flexible and extensible system in which can be built a wide variety
424 of application and domain specific tools and packages.</li>
426 <li><a href="https://gtoolkit.com/">Glamorous Toolkit</a>: Moldable development environment. It is a live
427 notebook. It is a flexible search interface. It is a fancy code
428 editor. It is a software analysis platform. It is a data
429 visualization engine. All in one.</li>
433 <div id="outline-container-orgc6ff886" class="outline-3">
434 <h3 id="orgc6ff886"><span class="section-number-3">6.1.</span> Computation on multi dimensional data</h3>
435 <div class="outline-text-3" id="text-6-1">
437 <li><a href="https://rd-alliance.org/system/files/Array-Databases_final-report.pdf">Array Databases: Concepts, Standards, Implementations</a></li>
439 <li><a href="https://tiledb.com/">TileDB</a>
441 <li>Analyze and share complex multi-dimensional data at scale</li>
444 <li><a href="../../sixth-data/doc/index.html#ID-01aa65c1-3d44-44a8-9b90-58454bc6be80">CM-1 Connection Machine</a></li>
446 <li><a href="https://lisp-stat.dev/">Lisp-Stat: An environment for Statistical Computing</a></li>
450 <div id="outline-container-org0fcc836" class="outline-3">
451 <h3 id="org0fcc836"><span class="section-number-3">6.2.</span> Distributed, reliable, parallel computing systems</h3>
452 <div class="outline-text-3" id="text-6-2">
454 <li><a href="https://github.com/vygr/ChrysaLisp">ChrysaLisp</a>
456 <li>Assembler/C-Script/Lisp 64 bit, MIMD, multi CPU, multi threaded,
457 multi core, multi user Parallel OS. With GUI, Terminal, OO
458 Assembler, Class libraries, C-Script compiler, Lisp interpreter,
459 Debugger, and more…</li>
462 <li><a href="http://www.uruk.org/emu/Taos.html">TAOS</a>
464 <li>Completely distributed operating system/virtual machine:</li>
467 <li><a href="http://esug.org/data/ESUG2015/3%20wednesday/1100-1130%20SQL%20Queries%20on%20Smalltalk%20Objects/SQL%20Queries%20in%20Smalltalk%20(James%20Foster).pdf">Gemstone/S</a>
469 <li>Completely distributed smalltalk based computing
473 <li><a href="http://phantomos.org/">http://phantomos.org/</a>
475 <li>Programs run forever. System crash or reboot does not destroy
476 state of running program.</li>
479 <li><a href="http://wiki.squeak.org/squeak/2665">Magma</a>
481 <li>Multi-user object database for Squeak</li>
488 <div id="postamble" class="status">
489 <p class="author">Author: Svjatoslav Agejenko</p>
490 <p class="date">Created: 2022-10-30 Sun 12:26</p>
491 <p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>