Questions tagged [oz]

Oz is a multiparadigm programming language including logic, functional (both lazy and eager), imperative, object-oriented, constraint, distributed, and concurrent programming.

Oz is a multiparadigm programming language including logic, functional (both lazy and eager), imperative, object-oriented, constraint, distributed, and concurrent programming.

The major strengths of Oz are in constraint programming and distributed programming. Due to its factored design, Oz is able to successfully implement a network-transparent distributed programming model. This model makes it easy to program open, fault-tolerant applications within the language. For constraint programming, Oz introduces the idea of "computation spaces"; these allow user-defined search and distribution strategies orthogonal to the constraint domain.

A canonical book on Oz programming is Concepts, Techniques, and Models of Computer Programming.

For more information, see the Mozart programming system, which is a multiplatform implementation of the Oz programming language.

110 questions
54
votes
4 answers

Opinions on the Mozart/Oz programming language?

I realize that Oz is a fairly obscure language. I first heard about it in the Programming Language Shootout. Then I found this Wikipedia article, which states Mozart/Oz to support 8 different paradigms. So I gave it a try. There were plenty of…
Lucky
  • 4,787
  • 9
  • 40
  • 50
19
votes
10 answers

What is the best programming language to implement neural networks?

I'm not looking for a Neural Networks library, since I'm creating new kinds of networks. For that I need a good "dataflow" language. Of course you can do this in C, C++, Java and co. but dealing from scratch with the multithreading etc. would be a…
Blacksad
  • 14,906
  • 15
  • 70
  • 81
14
votes
3 answers

Dynamic typing and programming distributed systems

Coming from Scala (and Akka), I recently began looking at other languages that were designed with distributed computing in mind, namely Erlang (and a tiny bit of Oz and Bloom). Both Erlang and Oz are dynamically typed, and if I remember correctly…
adelbertc
  • 7,270
  • 11
  • 47
  • 70
8
votes
2 answers

Function and procedure behave differently with the same code in Mozart Oz?

I try printing out the Fibonacci sequence in Oz using 2 approach : function and procedure using Emac as editor. Procedure goes here : declare fun {Fibo N} case N of 1 then 1 [] 2 then 1 [] M then {Fibo (M-1)} + {Fibo (M-2)} end…
Duc Tran
  • 6,016
  • 4
  • 34
  • 42
7
votes
2 answers

Tail-recursion optimization in Oz

In the chapter about function in the Oz tutorial, it says that: similar to lazy functional languages Oz allows certain forms of tail-recursion optimizations that are not found in certain strict functional languages including Standard ML, …
7
votes
2 answers

How do I create a list in Oz?

I'm trying to create a list in Oz using the following code: local Loop10 Xs in proc {Loop10 I} Xs={List.append Xs I} if I == 10 then skip else {Browse I} {Loop10 I+1} end {Browse Xs} end {Loop10…
el diablo
  • 2,647
  • 2
  • 20
  • 22
5
votes
1 answer

Executing Mozart-Oz code in command line

I'm trying to use Mozart Oz. I download the execution binary from source forge: http://sourceforge.net/projects/mozart-oz/. When launching Mozart.app, the emacs (aquamacs for Mac OS X) starts to do the coding within it. For example, I can type in…
prosseek
  • 182,215
  • 215
  • 566
  • 871
3
votes
1 answer

Does Haskell support unbound variables?

Does Haskell support the concept of unbound variables as in the Oz programming language?
Derek Mahar
  • 27,608
  • 43
  • 124
  • 174
2
votes
0 answers

What production-ready programming languages have something analogous to `NewName` of Mozart/Oz?

Section 3.7.5 of CTM introduces the NewName concept for data encapsulation in secure abstract data types. It is meant to be used in this manner: proc {NewWrapper ?Wrap ?Unwrap} Key={NewName} in fun {Wrap X} fun {$ K} if K==Key then X…
prash
  • 324
  • 3
  • 14
2
votes
1 answer

Check whether a tuple of variables cannot be constrained any further, in Mozart/Oz

Greetings, The idea can be best given with an example: Suppose we have a vector vec(a:{FD.int 1#100} b:{FD.int 1#100} c:{FD.int 1#100}). I want to be able to add constraints to this vector, until the point that every additional constraint I add to…
mhourdakis
  • 179
  • 8
2
votes
1 answer

Arithmetic expression evaluation oz mozart

I have a problem and I don't really know how to implement it in OZ: Suppose that you are given an arithmetic expression described by a tree constructed from tuples as follows: An integer is described by a tuple int(N), where N is an integer. An…
Alma A
  • 138
  • 10
2
votes
1 answer

Mozart-Oz difference between String and Atom

Could anyone provide a concise explanation of the difference between String and Atom types in the Oz programming language? I found the documentation lacking.
2
votes
1 answer

andthen Oz keyword

I'm trying to write a tokenizer, but I'm getting a parse error: %*************************** parse error ************************ %** %** syntax error, unexpected T_DEFAULT, expecting T_then %** %** in file…
user89862
2
votes
3 answers

Python 2.7 - How to assign a Class attribute (pointer?) to a variable (Need that to create Oz-esque Dataflow Variables)

Is it even possible? The idea is that i want to have a special variable, that does some processing when assigning or getting its values. I also want it to look like a regular variable, so the dot notation is a problem here. I know this is not really…
2
votes
2 answers

How to use AND in Oz Programming language

declare fun {Beta E} case E of lambda(X [Y Z]) andthen {IsAtom Y} then Z else nil end end {Browse {Beta lambda(y [y a]) }} I'm trying to make a beta reducer for lambda calculus but I don't know how to append arguments for…
user1869558
  • 697
  • 3
  • 11
  • 21
1
2 3 4 5 6 7 8