On August 20, 2006 4:32 PM Gaby wrote: > ... > When discussing _language syntax_, what else can you expect > except personal experience?
I believe there is a **lot** more to syntax than just personal experience. (Of course you know that...) There are some very good formal tools for describing the syntax natural languages which carry over well to programming languages. The basic point is to be able to deduce structure from some serialization, i.e. from a 1-dimensional linear representation of that structure. But these formal languages tools do have some limitations. Although serialization certainly has wide application, humans and computers are not limited to communicating in this manner. How often have you heard: "A picture is worth a thousand words."? Mathematicians have understand the importance of this concept for some time. This is certainly clear in graph theory and I would claim that it is evident in the wide spread use of commutative diagrams in category theory. The point of using indentation to representation program structure actually has less to do with syntax and more to do with the expressiveness of the language. You are probably not arguing that indentation has no purpose in programming languages but rather that it should be limited to illustrating program structure for human readability and not for compiler construction. But I would argue the other way. I think we need to do more to aid the communication between human and computer and that encoding program structure by indentation is only one small step in that direction. There are, for example some rather well developed programming languages which make use of a graphical input to define programs - so called "visual programming". http://en.wikipedia.org/wiki/Visual_programming_language BTW, There are some statistics (probably not very reliable) which suggest that Python is one of the most "expressive" widely used programming languages ever invented: http://en.wikipedia.org/wiki/Comparison_of_programming_languages#Expressiven ess I think it would be very interesting to consider the Axiom library from the point of view of these "statement ratio" measures. It seems to me that SPAD would probably rate even higher on this scale. > Call it anecdotal if you like, but syntax is a primary tool to > express ideas. It should not get in the way. I did not call syntax anecdotal. To say it another way: I think your personal experience with using indentation in Haskell is not a reliable guide on which to base judgements about syntax. > ... > | I would be very interested if you could point to any instance in > | the SPAD coding in the Axiom library of a logic error due to > | incorrect indentation. > > That is a meaningless request. Why is it meaningless? I thought you were arguing that #pile notation might lead to a larger number of logic errors than in those programs that use the {]; decorations. > Ask Tim what he thinks about the pile syntax; he knows the Axiom > library and worked on it. > Tim is not the only person (or even the main person) who worked on the Axiom library. > I'm just glad Adlor provided a better alternative. > As far as I know, Aldor processes both #pile and non-pile inputs in the same way. The use of #pile mode just increases the expressiveness of the language a little. Regards, Bill Page. _______________________________________________ Axiom-developer mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/axiom-developer
