git ssb

2+

dust / spaceship



Commit 9358b2e652cbb2a424416bc5198963bf48e5777e

draft engine spec

dust committed on 2/17/2016, 7:23:41 AM
Parent: 00cac69fdc51dbd2c81f681bcafc94fa8e2db1b3

Files changed

spaceship-schema.mdchanged
spaceship-engines.mdadded
spaceship-schema.mdView
@@ -98,8 +98,10 @@
9898 colonies, a la
9999 [iain banks' Culture novels](https://en.wikipedia.org/wiki/Orbital_(The_Culture))
100100 ([image 1](http://r.duckduckgo.com/l/?kh=-1&uddg=http%3A%2F%2Fwww.nss.org%2Fsettlement%2Fcalendar%2F2009%2FGoetzScheuermann-oneillcylinder-650.jpg))
101101 ([image 2](http://settlement.arc.nasa.gov/Kalpana/Kalpana-43-Aa2-1920.jpg))
102+- IRC channels and their hierarchies of
103+ [user modes](https://www.alien.net.au/irc/usermodes.html)
102104
103105 ### galaxies
104106
105107 **key characteristics:**
spaceship-engines.mdView
@@ -1,0 +1,49 @@
1+# spaceship engine spec
2+
3+following the [schema](./spaceship-schema.md), a spaceship needs an engine to
4+travel a cypherspace galaxy. an engine is constructed from a set of functions
5+that realise the spaceship schema. this resembles an API. unlike an API though,
6+these requirements are not set out by a central server and presented to
7+clients--spaceships own their engines and builders may customise them as they
8+like.
9+
10+what we present here is a limited set of functions a codebase should provide to
11+properly function as a spaceship engine. not all of these functions need
12+implementing on their own--many of them are easily realised as
13+compositions.
14+
15+## engine spec
16+
17+### pilot/spaceship internal functions
18+
19+- createIdentifier
20+- destroyIdentifier
21+- exportData/entombData
22+
23+### record functions
24+
25+- createRecord
26+- editRecord
27+
28+### orbital functions
29+
30+- createOrbital
31+- viewOrbital
32+- sendIdentifier/hailOrbital
33+- inviteTraveler
34+- abandonResidency/emigrateOrbital
35+- deportResident
36+
37+#### notes
38+
39+- a non-conforming engine build that does not obey `deportResident` calls is
40+ easily imagined. it is best not to rely on these types of functions.
41+- speaking generally, inviting a traveler to an orbital is implicitly allowing
42+ them to bring stowaways, by virtue of the fact that any spaceship can pass on
43+ messages. trust is, as it has always been, up to the people involved, not the
44+ machines they operate.
45+
46+### galaxy functions
47+
48+- enterGalaxy
49+- leaveGalaxy/disconnectGalaxy

Built with git-ssb-web