Minimal object containing this commit
Commit Diff
commit ae7bb5befd7a975c279529a5f8c0c8a4336ee39e7c54d357db2be7f2b9331565
Author: yihanwu1024 <yihanwu1024>
Date: Sat Feb 21 00:52:11 2026 +0000
revise proposal for a nonlinear operating system
diff --git a/242649c1cd1ce1c3dcf4a3bb410a203354667d227bffa6d32e2b89c01bdfc648 b/242649c1cd1ce1c3dcf4a3bb410a203354667d227bffa6d32e2b89c01bdfc648
index 112fd17..871fbdb 100644
--- a/242649c1cd1ce1c3dcf4a3bb410a203354667d227bffa6d32e2b89c01bdfc648
+++ b/242649c1cd1ce1c3dcf4a3bb410a203354667d227bffa6d32e2b89c01bdfc648
@@ -1,33 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<section xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://docbook.org/ns/docbook" xml:id="242649c1cd1ce1c3dcf4a3bb410a203354667d227bffa6d32e2b89c01bdfc648">
-<title>Nonlinearity and History in Cognition</title>
-<para>When it comes to personal computing, we require a lot of flexibility.
-But even meticulously designed tools regularly fail to meet some of the most natural user expectations.</para>
-<para>In order to figure this out, let us start with a truth:</para>
+<title>The Role of History in Cognition</title>
+<para>It is obviously a truth that:</para>
<include xmlns="http://www.w3.org/2001/XInclude" href="4f68acd223fd153f33e2c1fa4698721051065cf75933438361260d19c0a19b2a"/>
<para>We would probably not disagree with this statement.
So we change the data to reflect what exists in the real world.
-But very quickly, we have a lot of things that exist only by inference.
-Sometimes, the inference is wrong.
-Even if the inference is correct, we may still want to change to a different inference, and we lament the schema migration.</para>
+But very quickly, we have a lot of things that exist only by inference, or as a result of executing some code.
+Sometimes, the inference is wrong and needs to be changed.
+Even if the inference is correct, we may still want to change to a different inference, and we lament the schema migration.
+Or, it may be more common for us to encounter the situation in the introductory paragraph:
+resources have left the working context and been destroyed.</para>
<para>Oh, no!</para>
<para>Is the truth false?
After a lot of frustration, we may start to accept that:</para>
<include xmlns="http://www.w3.org/2001/XInclude" href="948c802b933d48e5e4c119355d1bc1255999702c32441e16794f9cd9ab5d4459"/>
<include xmlns="http://www.w3.org/2001/XInclude" href="055fec7d09664840ea3cc0f60487fe987c58a979544dbc9084ad98184266bc49"/>
-<para>These two claims seem to be a lot better at characterizing our complete process with information systems.</para>
-<para>But I think there is a stronger argument and, as a philosopher, I feel compelled to write it down.
-Here is an illustration without any philosophical jargon.
+<para>These two claims seem to be a lot better at characterizing a more complete approach with information systems.
+They do not contradict the earlier claim, but they are more demanding, in that
+they require us to manage resources in a fully traceable way.</para>
+<para>Here is a narrative that illustrates these claims.
Although I am not citing any work here, much credit should go to Immanuel Kant and his influence.
The distilled idea is quite standalone and close to common sense.</para>
<include xmlns="http://www.w3.org/2001/XInclude" href="de953caa1c41f7f9423f54dba246a3d67964fa5cd6dd4f307dcdf39cc3f52f4b"/>
<para>Here are some observations:</para>
<include xmlns="http://www.w3.org/2001/XInclude" href="e2f1986cd578bafe848f4b72fc719c367882aa6563d1a4b89a19ba5fe36af5d5"/>
-<para>All of these, in essence, require a property diametrically opposite to what current information systems have.
-Current systems, including but not limited to operating systems, are linear in the sense that data is fundamentally mutable, and space in any environment is fundamentally fixed, unless explicitly allocated.
-I call such a von Neumann (operating) system for its resemblance to the von Neumann computer architecture.
-My proposal is nonlineaity, in which data is immutable and space is automatically allocated.
-The linear-nonlinear comparison is very similar to the imperative-functional comparison in the programming language world.</para>
-<para>My philosophical thesis can be summarized in one sentence:</para>
+<para>All of these, in essence, require a property diametrically opposite to what common information systems have.
+Common systems, including but not limited to operating systems, are often linear in the sense that data is fundamentally mutable, and space in any environment is fundamentally fixed, unless explicitly allocated.
+I call such a von Neumann (operating) system for its connection to the von Neumann computer architecture, whose native instructions are imperative and programs linear.
+My proposal is nonlineaity, in which data is immutable and space is automatically allocated.</para>
+<para>The proposed principle can be summarized in one sentence:</para>
<include xmlns="http://www.w3.org/2001/XInclude" href="6b744acddaa177057bace0c2f8921d704cde85bb1816f6eb39862010fc597502"/>
</section>
diff --git a/591512d35940dede2b48d63de251f165d5621f2f14de5f0f8467fbbe6b524df7 b/591512d35940dede2b48d63de251f165d5621f2f14de5f0f8467fbbe6b524df7
index 90a1689..5d149af 100644
--- a/591512d35940dede2b48d63de251f165d5621f2f14de5f0f8467fbbe6b524df7
+++ b/591512d35940dede2b48d63de251f165d5621f2f14de5f0f8467fbbe6b524df7
@@ -49,4 +49,10 @@ All other things are cache.</para>
</itemizedlist>
<para>Much of the event store is left undefined, because a formal system needs to be designed for its pattern matching, and this should be the major portion of theoretical work.
The hope is that when this formal system is in place, it is possible to write any program with only the global event store as the synchronization primitive.</para>
+<para>It is notable that a nonlinear operating system has many features of a substrate.
+The event store provides transparent data persistence, and all programming languages can be used with the operating system.</para>
+<section xmlns="http://docbook.org/ns/docbook">
+<title>Related Work</title>
+<para><link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://nixos.org/">NixOS</link> uses a declarative system configuration framework that supports rollback, so it has some nonlinear features, but is not capable of replaying execution from input in the most general sense.</para>
+</section>
</section>
diff --git a/850af1a7cd34a85cd26159c01d62f55e6720592d70a42a8101e89b3ffe364558 b/850af1a7cd34a85cd26159c01d62f55e6720592d70a42a8101e89b3ffe364558
index dd5baec..f9d1069 100644
--- a/850af1a7cd34a85cd26159c01d62f55e6720592d70a42a8101e89b3ffe364558
+++ b/850af1a7cd34a85cd26159c01d62f55e6720592d70a42a8101e89b3ffe364558
@@ -1,6 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<article xmlns="http://docbook.org/ns/docbook" xml:id="850af1a7cd34a85cd26159c01d62f55e6720592d70a42a8101e89b3ffe364558">
<title>Nonlinearity, or, Can Operating System Be Liberated from the von Neumann Paradigm?</title>
+<para>When it comes to personal computing, we require a lot of flexibility.
+But even meticulously designed tools regularly fail to meet some of the most natural user expectations,
+especially by only supporting very specific workflows.
+Many unsupported workflows are possible, but cumbersome,
+because required information has left the working context,
+or even destroyed completely.
+In my opinion, this is the consequence of ignoring a basic cognitive necessity: nonlinearity,
+the opposite of linearity, meaning step-by-step, sequential, and destroying the old state (“linear” logic).
+I propose to address this problem category by respecting and supporting this cognitive necessity in the operating system.</para>
<include xmlns="http://www.w3.org/2001/XInclude" href="242649c1cd1ce1c3dcf4a3bb410a203354667d227bffa6d32e2b89c01bdfc648"/>
<include xmlns="http://www.w3.org/2001/XInclude" href="591512d35940dede2b48d63de251f165d5621f2f14de5f0f8467fbbe6b524df7"/>
<include xmlns="http://www.w3.org/2001/XInclude" href="202c97c111d18457b3228ce0b0e2e264e10730d13ca4836fb9b6e60279f408b9"/>
diff --git a/e2f1986cd578bafe848f4b72fc719c367882aa6563d1a4b89a19ba5fe36af5d5 b/e2f1986cd578bafe848f4b72fc719c367882aa6563d1a4b89a19ba5fe36af5d5
index deed6d1..d7243da 100644
--- a/e2f1986cd578bafe848f4b72fc719c367882aa6563d1a4b89a19ba5fe36af5d5
+++ b/e2f1986cd578bafe848f4b72fc719c367882aa6563d1a4b89a19ba5fe36af5d5
@@ -19,7 +19,8 @@ In other words, everything must be understood in the context of cognitive histor
</orderedlist>
</listitem>
<listitem>
-<para>Instead of maintaining state, intelligence maintains attention: the selection of useful data for the latest task.</para>
+<para>Intelligence maintains attention: the selection of useful data for the latest task.
+This process has very little resemblance to any conventional state management.</para>
</listitem>
</orderedlist>
</para>