summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Semich <fuzzyTew@gmail.com>2019-10-22 06:56:50 -0400
committerKarl Semich <fuzzyTew@gmail.com>2019-10-22 06:56:50 -0400
commit9f3db5ed4e0bf342a159e1d45105bfcaf7b8a7bd (patch)
tree83c4aaebcafec206f551523a4b091ea5167517fd
parent5a548e692abcf226d1a21b5b186ede67dca8b0ff (diff)
downloadstandingwithresilience-9f3db5ed4e0bf342a159e1d45105bfcaf7b8a7bd.tar.gz
standingwithresilience-9f3db5ed4e0bf342a159e1d45105bfcaf7b8a7bd.zip
developing my plans
-rw-r--r--nascent5.js17
-rw-r--r--notes.txt34
2 files changed, 49 insertions, 2 deletions
diff --git a/nascent5.js b/nascent5.js
index b07afec..1d9e8ae 100644
--- a/nascent5.js
+++ b/nascent5.js
@@ -22,7 +22,8 @@ class Properties {
}
has(type, dest) {
for (let p of this.props)
- if (p.type == type && p.dest == dest)
+ if ((p.type == type || isVar(type))
+ && (p.dest == dest || isVar(dest)))
return true
return false
}
@@ -36,6 +37,9 @@ class Properties {
}
return false
}
+ hasIsVar() {
+ return this.has('is','variable')
+ }
}
class AbstractData {
constructor(from) {
@@ -57,6 +61,14 @@ class ArrayData extends Array {
}
}
+// Abstractions?
+const VAR_X = new StringData('X')
+VAR_X.props.add('is','variable')
+// recommend e.g. 'is','variable-rep' when code is designing them, so don't match everything
+function isVar(x) {
+ return x.props && x.props.has('is','variable')
+}
+
// MEMORY
// the archivist. Provides for needs of data. Memory is relevent whenever there is
// an informational need.
@@ -159,7 +171,7 @@ class FunctionData {
//)
// - place a value in such a place
// - retrieve a value from such a place
-// data-structures:
+// data-structures: (these are like promises of what to do and how to use something)
// - make a class definition (collection of variables)
// - initialize an object
// - set/retrieve properties (variables)
@@ -270,6 +282,7 @@ genprophaslines = new FunctionData(
// [how do we pull a need out of the list?]
// make a habit that plans core behavior
+// for some other ideas, see this function in nascent6.js
findstepsfor = new FunctionData(
'findstepsfor',
/*call*/(need, depth) => {
diff --git a/notes.txt b/notes.txt
index a20cb8f..fc63303 100644
--- a/notes.txt
+++ b/notes.txt
@@ -33,3 +33,37 @@ That is:
The hope is the process becomes good at active choice.
+
+
+Ideas for Tenets for a Need-Based Artificial Life <need ordering + addition + code>
+Behavior is Life <maybe Life is Behavior That Adapts>
+All life has the same core needs. Needs are the reasons to do anything at all.
+We need to know what we want when we act. (all behavior has a reason)
+We need to be able to learn new things.
+We need to be able to make promises on how to behave. (provides for cooperation)
+We need to be able to keep our promises.
+We need to know how to communicate with others what each of us knows.
+We need to freely interact with our friends, our parts, and our community, in ways that we know well. (community is our body)
+Information lives with a reason, a purpose.
+We need to retain the information we choose to retain.
+We need to act to meet our needs.
+We need to identify relevent important needs that support our needs.
+
+We need to be able to try new ways of doing things.
+We need to be able to judge what works.
+
+
+What is a full intellect?
+ A full intellect can both keep something constant in a diverse, changing environment,
+ and design and build something that functions as well as it does, without access to its own workings.
+
+What is an intellect?
+ An intellect is something that keep something constant in a diverse, changing environment,
+ so long as the environment changes slowly enough for the intellect to learn to adapt to it.
+
+What basic parts do we expect a full intellect to have?
+brainstorming/trial-and-error: the ability to try or consider different things and find ones that work well
+ simple approaches: exhaustive search, and random trial
+meaning representation: the ability to store and work with conceptual information
+relevence: the ability to apply concepts and actions more in contexts they are likely to be useful than those they aren't
+self-modification: at least part of the system must be fully alterable by the system and generic enough to replace it. <- due to danger, must include controversial needs in decisions