  Money is a technology for promoting economic prosperity. Over history money
has become increasingly abstract, it used to be hardware, gold coins and the
like, now it is mostly software, data structures located in banks. Here I
propose the logical conclusion of the abstraction of money: to use as money the
most general form of information - computer programs. The key advantage that
using programs for money (program-money) adds to the technology of money is
agency. Program-money is active and thereby can fully participate in economics
as economic agents. I describe the three basic technologies required to
implement program-money: computational languages/logics to unambiguously
describe the actions and interactions of program-money; computational
cryptography to ensure that only the correct actions and interactions are
performed; and a distributed computational environment in which the money can
execute. I demonstrate that most of the technology for program-money has
already been developed. The adoption of program-money transfers responsibility
from human economic agents to money itself and has great potential economic
advantages over the current passive form of money. For example in
microeconomics, adding agency to money will simplify the exchange of ownership,
ensure money is only used legally, automate the negotiation and forming of
contracts, etc. Similar advantages occur in macroeconomics, where for example
the control of the money supply could be transferred from central banks to
money. It is also possible to envisage money that is not owned by any external
human agent or corporation. One motivation for this is to force economic
systems to behave more rationally and/or more like a specific economic theory,
thereby increasing the success of economic forecasting.
