Clanking replicator and Emacs Lisp: Difference between pages

From Wikipedia, the free encyclopedia
(Difference between pages)
Content deleted Content added
m Automated conversion
 
m Automated conversion
 
Line 1: Line 1:
<b>Emacs Lisp</b> is a version of [[LISP programming language|Lisp]] provided as the scripting language for the powerful [[Emacs]] text editor. Many of Emacs' functions are written in this language, and one can write almost anything in this language -- it's that powerful. But then, given that this text editor includes a web browser, news reader, email reader, and even games (to name a few), it's only fitting that the language be sufficiently ambitious.
The term '''clanking replicator''' refers to an artificial [[self-replication|self-replicating]]
system that relies on conventional large-scale technology and automation.
They are also sometimes called "Auxons", from the [[Greek]] word ''auxein'' which means "to grow".
The term evolved to distinguish such systems from the microscopic "[[assembler]]s"
that [[nanotechnology]] may make possible.
Whilst such a machine violates no physical laws, and we already possess the basic technologies necessary for some of the more detailed proposed designs, constructing a clanking replicator is not considered to be of economic interest at ths time.


Emacs Lisp has a huge library of functions, including many relating to text-editing itself, which allow the programmer to leverage it to accomplish some impressive tasks. The best approach is to use Emacs Lisp as a way of customizing Emacs into turning into an interface for the program desired. Of course, one can use Emacs Lisp to simply automate common Lisp tasks as well.
It is unlikely that this would all be contained within an single monolithic machine, but would rather
be an automated factory that is capable of manufacturing all of the components that make it up
and assembling them at a remote site.
The factory could produce mining [[robot|robots]] to collect raw materials, construction robots
to put new machines together, and repair robots to maintain itself against wear and tear,
all without human intervention or direction.
The advantage of such a system lies in its ability to expand its own capacity rapidly and without
additional human effort.


One of Emacs Lisp's greatest flaws is dynamic scoping. Objects declared within the scope of a function can be visible to outside functions. This can wreak havoc with larger projects.
The idea of non-biological self-replicating systems was first seriously suggested by mathematician
[[John von Neumann]] in the late [[1940s]] when he proposed a kinematic self-reproducing automaton
model as a thought experiment.
See von Neumann, J., [[1966]], ''The Theory of Self-reproducing Automata'', A. Burks, ed.,
Univ. of Illinois Press, Urbana, IL.


In [[1980]], [[NASA]] conducted a summer study entitled
''[http://www.islandone.org/MMSG/aasm/ Advanced Automation for Space Missions]'',
edited by [[Robert Freitas]], to produce a detailed proposal for the use of self-replicating
factories to develop lunar resources without requiring additional launches or the support
of human workers on-site.
The proposed system would have been capable of exponentially increasing productive capacity and,
in the long run, exploration of the entire galaxy within a reasonable timeframe.
This study inspired the science fiction novel ''[[Code of the Lifemaker]]'' (ISBN 0-345-30549-3)
by author [[James P. Hogan]].
An early fictional treatment was the short story ''Autofac'' by [[Philip K. Dick]],
published in [[1955]], which actually seems to precede von Neumann's original paper about
self-reproducing machines.
Another example can be found in the [[1962]] short story ''Epilogue'' by [[Poul Anderson]],
in which self-replicating factory barges were proposed that used minerals extracted from
ocean water as raw materials.
Clanking replicators are mentioned briefly in the
[http://www.foresight.org/EOC/EOC_Chapter_4.html#section01of03 fourth chapter] of
[[K. Eric Drexler|K. Eric Drexler's]] book ''[[Engines of Creation]]''.
There was an article about a proposed clanking replicator system to be used for developing
Earthly deserts in the October [[1995]] [[Discover Magazine]], featuring forests of solar panels
that powered desalination equipment to irrigate the land.
In [[1998]], [[Chris Phoenix]]
[http://groups.google.com/groups?hl=en&selm=6f0nui%248ih%241%40news.nanospace.com proposed] a design
for a macroscale replicator on the sci.nanotech [[usenet|newsgroup]], operating in a pool of
[[ultraviolet]]-cured liquid [[plastic]], selectively solidifying the plastic to form solid parts.
Computation could be done by [[fluidic logic]].
Power for the process could be supplied by a pressurized source of the liquid.


As the use of industrial automation has expanded over time, some factories have begun to approach
a semblance of self-sufficiency that is suggestive of clanking replicators.
However, it is unlikely that such factories will achieve "full closure" in the near future
so long as human labour and external spare part supplies remain conveniently available to them.
Fully-capable machine replicators are most useful for developing resources in dangerous environments
which are not easily reached by existing transporation systems.

[[talk:Clanking_replicator|Talk]]

Revision as of 23:00, 26 January 2002

Emacs Lisp is a version of Lisp provided as the scripting language for the powerful Emacs text editor. Many of Emacs' functions are written in this language, and one can write almost anything in this language -- it's that powerful. But then, given that this text editor includes a web browser, news reader, email reader, and even games (to name a few), it's only fitting that the language be sufficiently ambitious.

Emacs Lisp has a huge library of functions, including many relating to text-editing itself, which allow the programmer to leverage it to accomplish some impressive tasks. The best approach is to use Emacs Lisp as a way of customizing Emacs into turning into an interface for the program desired. Of course, one can use Emacs Lisp to simply automate common Lisp tasks as well.

One of Emacs Lisp's greatest flaws is dynamic scoping. Objects declared within the scope of a function can be visible to outside functions. This can wreak havoc with larger projects.