Intermediate languages are often used when compiling computer code. In computer translation, this same concept is apparently known as a “pivot language”. I thought of this while I was thinking about the utility of money. I suspect that there is a deeper logic, driven by simple math, behind using intermediate forms, and that this pattern is applied widely.
Compilers
As there are many different machines, it may be necessary to write translators for all the different machines. Such is the life of the compiler writer.
However, if you were to add another language to your compiler’s repertoire, you suddenly face a daunting task – you need to write as many translators as machines.
If there are n languages and m machines, there are n×m translators required. This combinatorial problem is usually broken by introducing an intermediate language (IL), with a “frontend” which goes from each language to the intermediate form and a “backend” which goes from the IL to each machine.
Now, we only need n+m translators. If both n and m are large, introducing the intermediate form is worthwhile.
Translation
That looks like a bargain to me. Notice that there are no arrows (or that they are effectively pointing in both directions), unlike the one-way nature of the previous case. The same problem also pops up in communication between entities, and is solved in the same way.
Money
Now, intuitively, you can’t choose all those rates completely independently. You would need constraints so that there weren’t positive cycles. By that I mean that a situation where you could trade one pig for two goats, two goats for five chickens and five chickens for two pigs would lead to problems in the market. Finding similar cycles between markets is called arbitrage, and is actually possible in current markets. I suspect this is largely due to the proliferation of currencies. The lack of a central currency (although the dollar or the euro get pretty close) means that there are some extra exchange rates.
Having only 2k exchange rates (k selling prices and k buying prices) reduces the flexibility of the market, but also completely eliminates the possibility of positive cycles as long as buying prices are lower than selling prices. In fact, if buying prices were the same as selling prices, we would only need k rates. This is what happens with commodities.
Is money socially constructed?
My thinking on this got started (as seems to happen quite often lately) by a Facebook conversation about the socially constructed nature of money. For those of you reading who don’t have degrees in philosophy, I think it is useful to point out that Ian Hacking (quoted in the Wikipedia article on Social Constructionism) argues that when something is said to be “socially constructed”, this is shorthand for at least the following two claims:
- (1) X need not have existed, or need not be at all as it is. X, or X as it is at present, is not determined by the nature of things; it is not inevitable.
Now, all this build-up was done so that I can argue that the idea of an intermediate form is actually not completely arbitrary. In effect, I am arguing against point (1) above. I’m saying that the mathematical reality of the combinatorial problems I discussed would lead to a very similar situation to the one we have now as long as we have the need to exchange goods.
Leave a Reply