Dear Rouan,

I can not answer all of your questions but offer at least a bit information.

On Apr 16, 2008, at 4:29 PM, Rouan van Dalen wrote:
Hi everyone.

Im quite new to mozart and Oz.  I'm working through the CTM book :).

I am thinking of using Mozart-Oz to develop a production-quality enterprise class document management system. However, before I begin, I just want to confirm
a few things about Mozart.

1) Is the Mozart implementation efficient with regards to memory management?
Execution speed doesn't have to super high, just adequate.

You might be interested in the language shootout benchmarks.

  http://dada.perl.it/shootout/oz.html
  http://dada.perl.it/shootout/craps_mem.html

2) Im definitely going to use the FFI to access existing libraries and implement bindings to other applications, etc. I have been reading the AliceML list and see that there are memory leaks
which relate to using the AliceML FFI.  Is this a problem in Mozart?

3) In Mozart's current state, is it suited for production-level enterprise applications?
(Which can be handed off to clients).

4) It is going to be a rather huge application and I just need to confirm that Mozart and Oz is
suited for writing large applications.

Oz' abstraction capabilities (e.g., procedures and classes for the small scale and lazily-loaded functors for the larger scale) make it well-suited for modular applications (which is discussed in more detail in CTM). All these abstractions can be freely nested (you could write a class which some method returning a procedure which creates a functor which ..).

Gump (a flex and bison interface) makes it painless to create some mini-language, e.g., for communicating between different applications, and there is also an XML parser. Tools like ozmake make the compilation process of larger projects consisting of several files easy, even if your project consists of, say, Oz, XML, C++ and Gump files (although ozmake is no all-in-one device for system definition, e.g., dependencies between different projects are not yet supported).

Coming from Lisp, the only abstraction mechanism I really miss in Oz for reducing the code of a larger application is the ability define some mini-language _on top of Oz_, in other words, I miss Lisp-like macros (there even exists something like that in Oz too, but using it in its present incarnation is discouraged).

BTW: I am working on a somewhat larger application with Mozart myself (see http://strasheela.sourceforge.net).


5) Is there still good support for Mozart? In other words, if I find a problem in Mozart,
can someone assist me in fixing the problem?

The Mozart community is relatively small. However, my experience as a Mozart user over several years has been quite good. Whenever I came up with some problem, virtually always there where some helpful replies. Just check out the mailing list archive to get some idea...


BTW: I couldn't resist to end with a Linus Torvalds quote :)

"Nobody should start to undertake a large project. You start with a small _trivial_ project, and you should never expect it to get large. If you do, you'll just overdesign and generally think it is more important than it likely is at that stage. Or worse, you might be scared away by the sheer size of the work you envision. So start small, and think about the details. Don't think about some big picture and fancy design. If it doesn't solve some fairly immediate need, it's almost certainly over-designed. And don't expect people to jump in and help you. That's not how these things work. You need to get something half-way _useful_ first, and then others will say "hey, that _almost_ works for me", and they'll get involved in the project." (http://en.wikiquote.org/wiki/Linus_Torvalds)

Best
Torsten


The solution should work on linux and windows with a preference to linux. The document management system will include a web server, web-interface for accessing the document store, connecting to a database server (MySQL / PostgreSQL). I want to develop as much as possible in Oz, only using the FFI if it is really necessary. The document management system will later be adapted to be distributed, but still function as a logical unit, transparently to the
user, making the solution very scalable.

Thanks.

Oz is great btw :)





      ___________________________________________________________
Yahoo! For Good helps you make a difference

http://uk.promotions.yahoo.com/forgood/
______________________________________________________________________ ___________ mozart-users mailing list mozart- [EMAIL PROTECTED]
http://www.mozart-oz.org/mailman/listinfo/mozart-users

--
Torsten Anders
Interdisciplinary Centre for Computer Music Research
University of Plymouth
Office: +44-1752-233667
Private: +44-1752-558917
http://strasheela.sourceforge.net
http://www.torsten-anders.de




_________________________________________________________________________________
mozart-users mailing list                               
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users

Reply via email to