It's hard for me NOT TO see Propositional Logic (or other systems using symbols as such) as equivalent to programming languages. Programming language are entirely metaphorical in nature; unbelievably so. When you call a function name? it's a precise metaphor for the function that works within it. HOWEVER: Why is it a metaphor and not equal? Because variables can global or local. They can be destroyed. Meanings can change. It's only within a limited context that they are valid. They're metaphorical because they don't mean the same thing in every context. If I use P in Propositional Calculus, I must use a specific Glossary of meanings (meanings are metaphorical as they pull in external knowledge from other sources to help shape the sense that this particular P is desired to be used in.... similarly to how a politician will shape meaning by making metaphorical comparisons to "The Old West" when describing the fight against our enemies (whatever they are at the time). The metaphors shape the sense in which the meaning is inferred within the minds of the audience. If the audience is a bunch of students of Logic, well, there's your politician and your constituents. In both cases, a pragmatic/practical aim is desired: Thinking clearly about "something". Whether or not that mode of thinking is *desirable* depends on the politics of the situation. What's the desired intention of the speaker/teacher/educator? It takes many metaphors / analogies to shape a desired sense in the mind of the student. Much the same way, it takes much coaxing to get electromagnetic devices to conform to the intentions of the hardware designer to make a computer do what a computer does. I could go deeper, but then I will appear entirely loony, if not already tongue emoticon