In a first approach, Oz can be programmed in a very similar way to other such languages, like Java. With experience gained, programs tend to become simpler, for example, as they use the powerful concepts of dataflow execution and first-class procedures. Concurrent Programming Oz is an eminently concurrent language. The Mozart system implements ultralightweight threads with preemptive fair scheduling. It easily supports applications with many thousands of threads.
Dataflow synchronization is achieved transparently through logic variables.
Unlike most other programming languages which lock you into a single programming paradigm, Oz unifies into one simple and coherent framework the functional, object-oriented, and logic flavors of programming. This is possible due to the very general and powerful underlying paradigm of concurrent constraint programming. Inferencing Constraint Programming Oz is a powerful constraint language with logic variables, finite domains, finite sets, rational trees and record constraints. Logic Programming Oz goes beyond Horn-clauses to provide a unique and flexible approach to logic programming. Oz distinguishes between directed and undirected styles of declarative logic programming.