Jump to content

Talk:Oz (programming language)

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia

Article lacking

[edit]

This article lacks source examples and a discussion of how the different paradigms encompassed by Oz "harmoniously blends together". In its current state it is factually informative but of little actual informative use for programmers or computer linguists. Mikademus 13:00, 9 August 2006 (UTC)[reply]

== Case statement: case x of nil ← means NOTHING to me :: article presumes knowledge of language syntax and semantics. Extremely poorly thought out. WTF is "first class" ?? Written by Oz insiders apparently for the benefit of Oz insiders. Benefit to their ego, that is. Contains "MOST" paradigms?!?! "Including"...this looks to be copied from some synopsis of an article. Is NOt factually informative. Jargon content: Extreme. Information content:Low (unless information of jargon is presumed to be available)69.40.242.176 (talk) 16:30, 12 September 2009 (UTC)[reply]

Requested move

[edit]

Oz programming language → [







[Oz (programming language)]] – Conformance with WP naming conventions atanamir

The page was moved. Move discussion is here: Wikipedia talk:WikiProject Programming languages/Renaming poll.

Question:

[edit]

Does Oz support Generic programming? —Preceding unsigned comment added by 59.93.217.97 (talk) 06:24, 5 September 2007 (UTC)[reply]

Yes, as a dynamically typed programming language, it does trivially support Generic Programming. 92.224.156.140 (talk) 19:14, 25 March 2009 (UTC)[reply]

Not the Sieve of Eratosthenes

[edit]

The code presented for the sieve is a prime number sieve, but it is not the Sieve of Eratosthenes. The text should be edited unless someone provides the actual sieve. —Preceding unsigned comment added by 24.18.214.0 (talk) 02:18, 5 December 2009 (UTC)[reply]

Very nice language, but lacks support.

[edit]

This article is brief, but interested me enough to look for more. Further investigation shows great work has been done to document and implement Mozart and Oz. However, getting help appears to be impossible. I installed 1.4.0 from the SUSE Linux repository, but cannot get it to run. Unfortunately, there are a backlog of unassigned bugs on the support web site. I hope Windows and Mac users have better luck. —Preceding unsigned comment added by 72.181.55.206 (talk) 06:22, 17 July 2010 (UTC)[reply]

Execution speed

[edit]

The execution speed is not a property of the programming language itself but of the mozart-compiler. That's why i suggest to mention/describe the execution speed at Mozart Programming System instead! --Mekeor (talk) 15:20, 31 July 2012 (UTC)[reply]

Possible additional citations

[edit]
  • Frühwirth, Thom; Michel, Laurent; Schulte, Christian (2006), "Constraints in Procedural and Concurrent Languages", in Rossi, Francesca; van Beek, Peter; Walsh, Toby (eds.), Handbook of Constraint Programming (PDF), Foundations of Artificial Intelligence, Elsevier, pp. 453–486, ISBN 978-0-444-52726-4
  • Wooldridge, Michael J.; Jennings, Nicholas R. (1995), "Agent Theories, Architectures, and Languages: A Survey" (PDF), Intelligent Agents, Springer
  • Smolka, Gert, The Oz Programming Model (PDF), Lecture Notes in Computer Science, vol. 1000, Springer, pp. 324–343

Lesser Cartographies (talk) 03:24, 3 September 2013 (UTC)[reply]

More examples

[edit]

Since this language claims to support so many paradigms it would be useful to have more examples. It seems the following paradigms are covered so far:

  • functional (lazy and eager)
  • dataflow
  • concurrent
  • message passing
  • object oriented

But what about the following?

  • imperative: are there the traditional for/while loops? better example of imperative algorithms changing variables?)
  • logic programming: perhaps the sibling prolog example below would translate well?
  • constraint programming: Perhaps one could solve the SEND+MORE=MONEY, using an all_different constraint etc.
  • discussion how parallel vs concurrent apply to the langauge

Prolog example:

mother_child(trude, sally).
 
father_child(tom, sally).
father_child(tom, erica).
father_child(mike, tom).
 
sibling(X, Y)      :- parent_child(Z, X), parent_child(Z, Y).
 
parent_child(X, Y) :- father_child(X, Y).
parent_child(X, Y) :- mother_child(X, Y).

This results in the following query being evaluated as true:

 ?- sibling(sally, erica).
 Yes

oz syntax highlighting lost

[edit]

Since the switch from Geshi to Pygments for syntax highlighting (phab:T85794), support for 'oz' was unfortunately dropped, as can be seen with the plain text formatting on this page and others such as Alice (programming language). If you want specialised 'oz' syntax highlight support again, it will need to be added to Pygments. Alternatively, if there is another language which has similar syntax, we can add that as a fallback. John Vandenberg (chat) 07:00, 18 July 2015 (UTC)[reply]

The 'sml' (Standard ML) lang works reasonably well, except that '%' comment character is not recognised. I've switched a few of the examples to sml, and moved some of the code comments into prose in the process. It should be fairly simple to create an 'oz' language in Pygments by subclassing the 'sml' handler. John Vandenberg (chat) 19:50, 18 July 2015 (UTC)[reply]
Hi Cedar101, I see you switched the lang to erlang for 11 of the source blocks, but not the remaining 5. Using erlang is definitely the right choice when the source needs a code comment, as erlang also uses % as the comment character. But I am wondering why not change the other five also to lang=erlang. It looks like the highlighting of 'then' and 'else' is lost using erlang, but sml doesnt highlight elseif. If erlang is 'close enough', we could propose a patch to the syntax highlighter so that 'oz' is recognised as a language, and rendered using the 'erlang' lexer. John Vandenberg (chat) 00:50, 23 July 2015 (UTC)[reply]
Okay, I changed all to "elrang". -- Cedar101 (talk) 03:54, 23 July 2015 (UTC)[reply]

Article still lacking

[edit]

Fifteen years on, it still assumes that the reader knows the language. What is "browse"? What is special about the examples which demonstrate that it's "allowing higher order functional programming"? It's reasonable to assume that the reader understands concepts like "first class values" (which generally have Wp pages) but not that he's already familiar with the syntax and semantics of the language being described... why would he be reading the article if he were? MarkMLl (talk) 20:22, 15 July 2021 (UTC)[reply]

is Oz always 50x slower than GCC in practice?

[edit]

If a problem stated in Oz is solved in 1 hour, but that problem coded in C++ is still not solved after 50 hours, then in practice is that Oz program very slow as stated in this article ? The conjectured Oz program may have used >50x resources, but if those resources are cheap given the value of the solution, then even that inefficiency might not look like a failing in practice. This is all so obvious that the "very slow" statement reminds me of the "very large" programs complaint against Smalltalk, when those Large programs were Very flexible in rapid response to mission critical business issues and fostered effective team engineering transparency with small units of code ... in practice and reliably so. 174.118.226.83 (talk) 14:07, 10 January 2022 (UTC)[reply]