More teaching: We’re starting on the open economy now. Exchange rates, trade, international finance, the balance of payments. So one of the first things you have to explain, is the definition of real and nominal exchange rates:
e_R = e_N P*/P
where P and P* are the home and foreign price levels respectively, and the exchange rate e is defined as the price of foreign exchange (so an appreciation means that e falls and a depreciation means that it rises).
This is a useful definition to know — though of course it’s not as straightforward as it seems, since as we’ve discussed before there are various possibles Ps, and once we are dealing with more than two countries we have to decide how to weight them, with different statistical agencies using different weightings. But set all that aside. What I want to talk about now, is what a nice little example this equation offers of a structuralist perspective on the economy.
As given above, the equation is an accounting identity. It’s always exactly true, simply because that’s how we’ve defined the real exchange rate. As an accounting identity, it doesn’t in itself say anything about causation. But that doesn’t mean it’s vaacuous. After all, we picked this particular definition because we think it is associated with some causal story.  The question is, what story? And that’s where things get interesting.
Since we have one equation, we should have one endogenous (or dependent) variable. But which one, depends on the context.
If we are telling a story about exchange rate determination, we might think that the endogenous variable is e_N. If price levels are determined by the evolution of aggregate supply and demand (or the growth of the money stock, if you prefer) in each country, and if arbitrage in the goods market enforces something like Purchasing Power Parity (PPP), then the nominal exchange rate will have to adjust to keep the real price of a comparable basket of goods from diverging across countries.
On the other hand, we might not think PPP holds, at least in the short run, and we might think that the nominal exchange rate cannot adjust freely. (A fixed exchange rate is the obvious reason, but it’s also possible that the forex markets could push the nominal exchange rate to some arbitrary level.) In that case, it’s the real exchange rate that is endogenous, so we can see changes in the price of comparable goods in one country relative to another. This is implicitly the causal structure that people have in mind when they argue that China is pursuing a mercantilist strategy by pegging its nominal exchange rate, that devaluation would improve current account balances in the European periphery, or that the US could benefit from a lower (nominal) dollar. Here the causal story runs from e_N to e_R.
Alternatively, maybe the price level is endogenous. This is less intuitive, but there’s at least one important story where it’s the case. Anti-inflation programs in a number of countries, especially in Latin America, have made use of a fixed exchange rate as a “nominal anchor.” The idea here is that in a small open economy, especially where high inflation has led to widespread use of a foreign currency as the unit of account, the real exchange rate is effectively fixed. So if the nominal exchange rate can also be effectively fixed, then, like it or not, the domestic price level P will have to be fixed as well. Here’s Jeffrey Sachs on the Bolivian stabilization:
The sudden end of a 60,000 percent inflation seems almost miraculous… Thomas Sargent (1986) argued that such a dramatic change in price inflation results from a sudden and drastic change in the public’s expectations of future government policies… I suggest, in distinction to Sargent, that the Bolivian experience highlights a different and far simpler explanation of the very rapid end of hyperinflations. By August 1985,… prices were set either explicitly or implicitly in dollars, with transactions continuing to take place in peso notes, at prices determined by the dollar prices converted at the spot exchange rate. Therefore, by stabilizing the exchange rate, domestic inflation could be made to revert immediately to the US dollar inflation rate.
So here the causal story runs from e_N to P.
In the three cases so far, we implicitly assume that P* is fixed, or at least exogenous. This makes sense; since a single country is much smaller than the world as a whole, we don’t expect anything it does to affect the world price level much. So the last logical possibility, P* as the endogenous variable, might seem to lack a corresponding real world story. But an individual countries is not always so much smaller than the world as a whole, at least not if the individual country is the United States. It’s legitimate to ask whether a change in our price level or exchange rate might not show up as as inflation or deflation elsewhere. This is particularly likely if we are focusing on a bilateral relationship. For instance, it might well be that a devaluation of the dollar relative to the renminbi would simply (or mostly) produce corresponding deflation  in China, leaving the real exchange rate unchanged.
Here, of course, we have only one equation. But if we interpret it causally, that is already a model, and the question of “what adjusts?” can be rephrased as the choice between alternative model closures. With multiple-equation models, that choice gets trickier — and it can be tricky enough with one equation.
In my opinion, sensitivity to alternative model closures is at the heart of structuralist economics, and is the great methodological innovation of Keynes. The specific application that defines the General Theory is the model closure that endogenizes aggregate income — the interest rate, which was supposed to equilibrate savings and investment, is pinned down by the supply and demand of liquidity, so total income is what adjusts — but there’s a more general methodological principle. “Thinking like an economist,” that awful phrase, should mean being able to choose among different stories — different model closures — based on the historical context and your own interests. It should mean being able look at a complex social reality and judge which logical relationships represent the aspects of it you’re currently interested in, and which accounting identities are most relevant to the story you want to tell. Or as Keynes put it, economics should be thought of as
a branch of logic, a way of thinking … in terms of models, joined to the art of choosing models which are relevant to the contemporary world. … [The goal is] not to provide a machine, or method of blind manipulation, which will furnish an infallible answer, but to provide ourselves with an organised and orderly method of thinking out particular problems.
Much of mainstream macroeconomics assumes there is a “true” model of the world. Connected to this, there’s an insistence — shared even by a lot of heterodox macro — on regarding some variables as being strictly exogenous and others as strictly endogenous, so that in every story causality runs the same way. In the canonical story, tastes, technology and endowments (one can’t help hearing: by the Creator) are perfectly fixed, and everything else is perfectly adjustable. 
Better to follow Keynes, and think about models as more or less useful for clarifying the logic of particular stories.
EDIT: Of course not everyone who recognizes the methodological distinction I’m making here agrees that the eclecticism of structuralism is an advantage. Here is my teacher Peter Skott (with Ben Zipperer):
The `heterodox’ tradition in macroeconomics contains a wide range of models. Kaleckian models treat the utilization rate as an accommodating variable, both in the short and the long run. Goodwin’s celebrated formalization of Marx, by contrast, take the utilization rate as fixed and looks at the interaction between employment and distribution. Distribution is also central to Kaldorian and Robinsonian theories which, like Goodwin, endogenize the profit share and take the utilization rate as structurally determined in the long run but, like the Kaleckians, view short-run variations in utilization as an intrinsic part of the cycle. The differences in these and other areas are important, and this diversity of views on core issues is no cause for celebration.
EDIT 2: Trygve Haavelmo, quoted by Leijonhufvud:
There is no reason why the form of a realistic model (the form of its equations) should be the same under all values of its variables. We must face the fact that the form of the model may have to be regarded as a function of the values of the variables involved. This will usually be the case if the values of some of the variables affect the basic conditions of choice under which the behavior equations in the model are derived.
That’s what I’m talking about. There is no “true” model of the economy. The behavioral relationships change depending where we are in economic space.
Also, Bruce Wilder has a long and characteristically thoughtful comment below. I don’t agree with everything he says — it seems a little too hopeless about the possibility of useful formal analysis even in principle — but it’s very worth reading.
 “Accounting identities don’t tell causal stories” is a bit like “correlation doesn’t imply causation.”Both statements are true in principle, but the cases we’re interested in are precisely the cases where we have some reason to believe that it’s not true. And for both statements, the converse does not hold. A causal story that violates accounting identities, or for which there is no corresponding correlation, has a problem.
 Or lower real wages, the same thing in this context.
 Or you sometimes get a hierarchy of “fast” and “slow” variables, where the fast ones are supposed to fully adjust before the slow ones change at all.