The Mozart OZ computer programming language has almost all the features you want. It has the shadows of haskell, lisp, prolog, c, perl, java and other languages. (This post will be serialized later)

Source: Internet
Author: User

Mozart-oz


The mozart-oz language is a new generation of Computer languages jointly developed by Universit ät des Saarlandes, Swedish Institute of Computer Science, and Universit é catholique de Louvain.
The language itself has the shadows of haskell, lisp, prolog, c, perl, java, and so on. It has almost all the features you want, such:
Constrained programming features:
In processing complex constraints, Languages provide search engines.
, We only need to define the constraints
Unless it is a very complex problem, you generally do not need to define a search by a programmer.
Function. The following is a solution to the legendary Einstein
Search Tree in five countries, five colors, and five things:
Search Tree
Constraints are easy to write:
Decalre x y in
X: 1 #11
Y: 12 #30
X + Y =: 25
X * Y =: 150
{Show [x y]}
You can solve the problem:
X belongs to [1 11]
Y belongs to [12 30] and x y is satisfied
X + Y = 25
X * Y = 150
X and Y of the condition.
DataFlow features:
You can bind a variable to a value and use it first, for example:
Declare X in
Thread {Show X} end
X = 100
When the program executes 2nd rows X is not bound to a value, the thread will automatically block
The bound value. The original thread then assigns a value to X, and the first thread automatically
Run.
Distributed features:
An object can be referenced by multiple hosts.
The value of this object is automatically synchronized to all hosts.
Operations on this object are automatically blocked ). In distributed programming in other languages
The synchronization mechanism is controlled by programmers, which brings a lot to program design.
And all the language elements in javasart include the data structures provided
Is directly supporting distributed, distributed virtual machines with full oz processing,
We write distributed
There is no difference between a program and writing a local concurrent program.
Thread and concurrency features:
It is very convenient to create a thread: the thread expression end,
The thread creation speed is about 20 times that of java.
Many expressions in the program. For example, the condition selection is multithreading.
For example, if one of the more than 100 conditions is met, the system will automatically create a thread for each condition to check if any conditions are met, and all threads will exit, the overall situation is met.
In mongoart-oz, it is common to create millions of threads during the process of solving constraints.
Many other programming languages
The thread feature of is to provide database or class support. Compared with the direct language support, it makes it easier for us to process multithreading.
Object-oriented features:
Has all the oo features, especially support for multi-inheritance,
For example, a lion's face inherits from a lion's stone.
Inheritance is not allowed in many languages.
Function programming features: Support for passing functions as another function parameter, support for returning functions to another function, support for higher-order functions, support for recursion and tail recursion ......
For example:
{Browse {Map [1 2 3 4] fun {$ I} I * 10 end }}
Results will be displayed [10 20 30 40]
In addition, mongoart-oz also supports many features such as inertia evaluation, modular design, and other language convenience.
Integration is not the end of an article.
Because of the many features, mongoart-oz is called a multi-generic language.
This language has a history of nearly 20 years and is very mature. It comes with a complete set of documents, MIT
Press Concepts Techniques and. Models of Computer Programming explains the Programming technology and pattern in this language.


Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.