To many readers, Mozart/Oz represents a new addition to the pantheon of p- gramming systems. One way of evaluating a newcomer is through the eyes of the classics, for example Kernighan and Pike s The Practice of Programming, a bookthatconcludeswithsix lastingconcepts :simplicityandclarity,generality, evolution,interfaces,automation,andnotation.KernighanandPikeconcentrate on using standard languages such as C and Java to implement these concepts, but it is instructive to see how a multiparadigm language such as Oz changes the outlook. Oz s concurrency model yields simplicity and clarity (because Oz makes it easier to express complex programs with many interacting components), g- erality, and better interfaces (because the data?ow model automatically makes interfaces more lightweight). Constraint programming in Oz again yields simplicity and clarity (because theprogrammercanexpresswhatneedstobetrueratherthanthemorecomplex issue of how to make it true), and o?ers a powerful mathematical notation that is di?cult to implement on top of languages that do not support it natively. Mozart s distributed computing model makes for improved interfaces and eases the evolution of systems. In my own work, one of the most important concernsistobeabletoquicklyscaleupaprototypeimplementationintoalar- scale service that can run reliably on thousands of computers, serving millions of users. The ?eld of computer science needs more research to discover the best ways of facilitating this, but Mozart provides one powerful approach. Altogether,Mozart/Ozhelpswithallthelastingconceptsexceptautomation, and it plays a particularly strong role in notation, which Kernighan and Pike pointoutisanunderappreciatedarea.Ibelievethatprovidingtherightnotation isthemostimportantofthesixconcepts,onethatsupportsalltheothers.Mul- paradigm systems such as Oz provide more choices for notation than sing- paradigm languages.
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.