On 14/04/11 18:25, [email protected] wrote:
For two years now I have taught Oz to a few (6 in all) advanced high school
students. All had at least a year's experience with Java programming.
I myself had decades of experience with I've forgotten how many languages.
So this is a sample of seven people who either are not very experienced or have
experience beyond the C/Java syntactic family that is so popular now. I believe
most, if not all, of us would agree that a fair bit of the power of Oz lies in
its syntax.
Yes, syntax is important for Oz: it allows Oz to factorize its concepts
and keep them separate, so that multiparadigm programming actually works
in Oz. I.e., it's possible to program with a certain set of concepts
without being contaminated by the ones one doesn't want to use. That's
not possible in almost all other languages, and it's definitely not
possible in Java (where objects and state contaminate everything).
That's why we chose Scala and not Java as the base for Ozma. The Scala
designers already did a lot of hard work modifying the Java syntax to
cover both functional and object-oriented programming. Scala has a
somewhat different syntax than Java because of this, but it seems that
Java programmers can adapt to Scala syntax.
As for people finding it more difficult to change syntax than to add concepts,
look
at the mathematics education they have gone through: very little syntactic
change
compared to conceptual change. I'm thinking syntax is akin to language and
language is what we use to understand concepts.
J Adrian Zimmer
For programmers who were brought up in one syntax only (usually the
C/Java style), syntax is the same as semantics! The only way they can
learn new concepts is if the concepts are expressed with a syntax very
close to what they know. I would like these programmers to learn about
dataflow concurrency.
Peter
_________________________________________________________________________________
mozart-users mailing list
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users