caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* Objective Caml 2.03 released
@ 1999-11-19 17:30 Xavier Leroy
  1999-11-19 21:15 ` Matías Giovannini
  1999-12-04 17:46 ` Objective Caml 2.03/4 released skaller
  0 siblings, 2 replies; 7+ messages in thread
From: Xavier Leroy @ 1999-11-19 17:30 UTC (permalink / raw)
  To: caml-list

I'm happy to announce the release of Objective Caml version 2.03.
The main purpose of this release is to collect all bug fixes done
since 2.02.  It also adds some convenience features (e.g. the "partial
match" warning now shows an example of value that is not matched), and
some new ports (e.g. to BeOS).  A detailed list of changes is appended
below.

Perhaps the main novelty in this release is the change of license.
Objective Caml is now distributed under the LGPL for the the runtime
system and the libraries, and the QPL for the remainder of the system.

While Objective Caml has always been distributed at no charge and with
full source code, it wasn't technically "open source" due to some
restrictions in the original INRIA license.  The new licensing
conditions make Objective Caml officially open source, and guarantee
that OCaml-generated binaries can be redistributed without any
restrictions (this wasn't stated clearly enough in the original
license).

Sources, documentation and binaries for Linux/RedHat and Windows are
available from:

        http://caml.inria.fr/ocaml/distrib.html
        ftp://ftp.inria.fr/lang/caml-light/

For general info on Objective Caml, see http://caml.inria.fr/ocaml/

Please direct queries and bug reports to caml-light@inria.fr
and general discussions to the mailing-list caml-list@inria.fr or the
comp.lang.ml newsgroup.

- Xavier Leroy, for the Objective Caml team.

Objective Caml 2.03:
--------------------

New ports:
- Ported to BeOS / Intel x86 (bytecode and native-code).
- BSD / Intel x86 port now supports both a.out and ELF binary formats.
- Added support for {Net,Open}BSD / Alpha.
- Revamped Rhapsody port, now works on MacOS X server.

Syntax:
- Warning for "(*)" and "*)" outside comment.
- Removed "#line LINENO", too ambiguous with a method invocation;
  the equivalent "# LINENO" is still supported.

Typing:
- When an incomplete pattern-matching is detected, report also a 
  value or value template that is not covered by the cases of 
  the pattern-matching.
- Several bugs in class type matching and in type error reporting fixed.
- Added an option -rectypes to support general recursive types,
  not just those involving object types.

Bytecode compiler:
- Minor cleanups in the bytecode emitter.
- Do not remove "let x = y" bindings in -g mode; makes it easier to
  debug the code.

Native-code compiler:
- Fixed bug in grouping of allocations performed in the same basic block.
- Fixed bug in constant propagation involving expressions containing
  side-effects.
- Fixed incorrect code generation for "for" loops whose upper bound is
  a reference assigned inside the loop.
- MIPS code generator: work around a bug in the IRIX 6 assembler.

Toplevel:
- Fixed incorrect redirection of standard formatter to stderr
  while executing toplevel scripts.

Standard library:
- Added List.rev_map, List.rev_map2.
- Documentation of List functions now says which functions are
  tail-rec, and how much stack space is needed for non-tailrec functions.
- Wrong type for Printf.bprintf fixed.
- Fixed weird behavior of Printf.sprintf and Printf.bprintf in case of
  partial applications.
- Added Random.self_init, which initializes the PRNG from the system date.
- Sort.array: serious bugs fixed.
- Stream.count: fixed incorrect behavior with ocamlopt.
- Added Sys.date.

Run-time system and external interface:
- Fixed weird behavior of signal handlers w.r.t. signal masks and exceptions
  raised from the signal handler.
- Fixed bug in the callback*_exn() functions.

Debugger:
- Fixed wrong printing of float record fields and elements of float arrays.
- Supports identifiers starting with '_'.

Profiler:
- Handles .mli files, so ocamlcp can be used to replace ocamlc (e.g. in a
  makefile).
- Now works on programs that use stream expressions and stream parsers.

Other libraries:
- Graphics: under X11, treat all mouse buttons equally; fixed problem
  with current font reverting to the default font when the graphics
  window is resized.
- Str: fixed reentrancy bugs in Str.replace and Str.full_split.
- Bytecode threads: set standard I/O descriptors to non-blocking mode.
- OS threads: revised implementation of Thread.wait_signal.
- All threads: added Event.wrap_abort, Event.choose [].
- Unix.localtime, Unix.gmtime: check for errors.
- Unix.create_process: now supports arbitrary redirections of std descriptors.
- Added Unix.open_process_full.
- Implemented Unix.chmod under Windows.
- Big_int.square_big_int now gives the proper sign to its result.

Others:
- ocamldep: don't stop at first error, skip to next file.
- Emacs mode: updated with Garrigue and Zimmerman's snapshot of 1999/10/18.
- configure script: added -prefix option.
- Windows toplevel application: fixed problem with graphics library
  not loading properly.




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Objective Caml 2.03 released
  1999-11-19 17:30 Objective Caml 2.03 released Xavier Leroy
@ 1999-11-19 21:15 ` Matías Giovannini
  1999-12-04 17:46 ` Objective Caml 2.03/4 released skaller
  1 sibling, 0 replies; 7+ messages in thread
From: Matías Giovannini @ 1999-11-19 21:15 UTC (permalink / raw)
  To: caml-list

Xavier Leroy wrote:
> 
> I'm happy to announce the release of Objective Caml version 2.03.
> The main purpose of this release is to collect all bug fixes done
> since 2.02.  It also adds some convenience features (e.g. the "partial
> match" warning now shows an example of value that is not matched), and
> some new ports (e.g. to BeOS).  A detailed list of changes is appended
> below.

Excellent news!

I've got a question. What would be needed (in terms of things to do,
effort &c) in order to port the native compiler to MacOS? I'm not
thinking of anything fancy, just an MPW tool producing MPW tools.

MPW has a good PowerPC assembler, and a good PowerPC linker. What else
is needed?

TIA, regards,
Matías.

-- 
I've got your message. I couldn't read it: it was a cryptogram
-- Laurie Anderson




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Objective Caml 2.03/4 released
  1999-11-19 17:30 Objective Caml 2.03 released Xavier Leroy
  1999-11-19 21:15 ` Matías Giovannini
@ 1999-12-04 17:46 ` skaller
  1999-12-05 23:34   ` Markus Mottl
                     ` (2 more replies)
  1 sibling, 3 replies; 7+ messages in thread
From: skaller @ 1999-12-04 17:46 UTC (permalink / raw)
  Cc: caml-list

I have just read the LICENCE conditions for ocaml 2.04, and I'm
seriously concerned, I may be forced to stay with the more
liberal licence of 2.02.

Why was such a grossly restrictive, anti-freedom licence chosen?
Or do I mis-understand it?

I've been working on a product using ocaml for some time,
and I need to make money out of it. The new licence seems
to preclude this, forcing me to give away my source.

Even worse, my clients will not accept this licence,
which I would be forced to pass on. The product
is an interpreter/compiler for Python, which is
'free for any use'. My understanding of the 2.02 licence
was that it was also free for any use (provided INRIA
is acknowlegded).

There was, some time in the past, a discussion
about persuading management to switch to ocaml.
The new licence is a guarrantee it will NEVER be used
for serious software development. No one can afford
to develop a production quality software, and then 
be forced to give the it away.

The impact on research is serious: no serious researcher
could sensibly commit to using ocaml for any kind of
valuable project, since it could not be commericalised
without a total rewrite.

As it happens, it is my desire to provide the my product
'free for any use', but I need that to be my decision,
since I have to generate income to live on somehow.

I think there is a gross misunderstanding of 'freedom'
here. Do we want 'free software' to consist of a combination
of code submitted by amateurs, and people employed by
institutions, most of which are funded by theft (taxation)?
Why are people that expect to work on software and actually
get paid for it by the users, being discriminated against?

Please tell me I don't have to go back to using C++. :-(

-- 
John Skaller, mailto:skaller@maxtal.com.au
10/1 Toxteth Rd Glebe NSW 2037 Australia
homepage: http://www.maxtal.com.au/~skaller
voice: 61-2-9660-0850




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Objective Caml 2.03/4 released
  1999-12-04 17:46 ` Objective Caml 2.03/4 released skaller
@ 1999-12-05 23:34   ` Markus Mottl
  1999-12-06 20:55     ` skaller
  1999-12-06  0:02   ` Stefan Monnier
  1999-12-06  9:21   ` William Chesters
  2 siblings, 1 reply; 7+ messages in thread
From: Markus Mottl @ 1999-12-05 23:34 UTC (permalink / raw)
  To: skaller; +Cc: OCAML

> Why was such a grossly restrictive, anti-freedom licence chosen?
> Or do I mis-understand it?

Well, some people would think the other way round... ;-)

> I've been working on a product using ocaml for some time,
> and I need to make money out of it. The new licence seems
> to preclude this, forcing me to give away my source.

I wouldn't say that there is reason for fearing that you cannot distribute
your sources as binary only:

The runtime system and other things that go into the executable are subject
to the GNU *Library* General Public License.

This section might be relevant to you:

    4. You may copy and distribute the Library (or a portion or
  derivative of it, under Section 2) in object code or executable form
  under the terms of Sections 1 and 2 above provided that you accompany it
  with the complete corresponding machine-readable source code, which must
  be distributed under the terms of Sections 1 and 2 above on a medium
  customarily used for software interchange.

    If distribution of object code is made by offering access to copy
  from a designated place, then offering equivalent access to copy the
  source code from the same place satisfies the requirement to distribute
  the source code, even though third parties are not compelled to copy the
  source along with the object code.

So if I get it right, the only thing you have to do when shipping your
binaries is to either ship the sources *of the runtime libraries*, too, or
to provide an URL to the distribution directory of INRIA so that people can
always access the sources of the linked in libraries.

> There was, some time in the past, a discussion
> about persuading management to switch to ocaml.
> The new licence is a guarrantee it will NEVER be used
> for serious software development. No one can afford
> to develop a production quality software, and then 
> be forced to give the it away.

If this were true, no commercial company would want to use gcc - and I am
sure that there are plenty which do.

Reality also shows that it *is* possible to develop free software in
production quality (and higher...).

> The impact on research is serious: no serious researcher
> could sensibly commit to using ocaml for any kind of
> valuable project, since it could not be commericalised
> without a total rewrite.

As long as you do not have to modify the sources of OCaml to develop your
product, everything should be fine. And if you have to modify them, it is
obviously the intention of INRIA that you also distribute the changed
system under the licence in question... - in my eyes the results of public
research *should* also stay free for the public.

> 'free for any use', but I need that to be my decision,
> since I have to generate income to live on somehow.

I'd say that making money by writing software will sooner or later change
to making money by providing support and consulting. Even Richard Stallman
does not object to this - and, as far as I know, makes a living from it...

Furthermore, you should be aware of the "network effect": the more people
use your system (if you make it free software), there will be even more
people who are inclined to use it and thus, even more people will require
your advice.

It is definitely not altruism if companies like e.g. Sun give away
professional software for "free"... (Star Office) - they know what they are
doing!

> Please tell me I don't have to go back to using C++. :-(

No, you don't have to... ;-)

Regards,
Markus Mottl

-- 
Markus Mottl, mottl@miss.wu-wien.ac.at, http://miss.wu-wien.ac.at/~mottl




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Objective Caml 2.03/4 released
  1999-12-04 17:46 ` Objective Caml 2.03/4 released skaller
  1999-12-05 23:34   ` Markus Mottl
@ 1999-12-06  0:02   ` Stefan Monnier
  1999-12-06  9:21   ` William Chesters
  2 siblings, 0 replies; 7+ messages in thread
From: Stefan Monnier @ 1999-12-06  0:02 UTC (permalink / raw)
  To: caml-list

>>>>> "skaller" == skaller  <skaller@maxtal.com.au> writes:
> I've been working on a product using ocaml for some time,
> and I need to make money out of it. The new licence seems
> to preclude this, forcing me to give away my source.

I believe you've misunderstood the license.  If you write code in O'Caml,
the license doesn't impose anything on your software's license.  The
LGPL license on the runtime might force you to ensure that your program
is physically separate from the runtime so that the runtime can be replaced
by your customers if they so desire, but this says nothing about the
license under which your software is distributed.

If your software is a modification of O'Caml then indeed, the license might
impose restrictions, but it's only fair.

> for serious software development. No one can afford
> to develop a production quality software, and then
> be forced to give the it away.

The FSF, RedHat, Cygnus and others are proofs that your "no one"
is incorrect.


	Stefan




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Objective Caml 2.03/4 released
  1999-12-04 17:46 ` Objective Caml 2.03/4 released skaller
  1999-12-05 23:34   ` Markus Mottl
  1999-12-06  0:02   ` Stefan Monnier
@ 1999-12-06  9:21   ` William Chesters
  2 siblings, 0 replies; 7+ messages in thread
From: William Chesters @ 1999-12-06  9:21 UTC (permalink / raw)
  To: caml-list

skaller writes:
 > I've been working on a product using ocaml for some time,
 > and I need to make money out of it. The new licence seems
 > to preclude this, forcing me to give away my source.

IANAL but I don't think it does---you're in the same situation as with
many other software tools, not least gcc.  Don't forget that Richard
\begin{ocker}pinko commie beardie\end{ocker} Stallman would rather you
used the GPL for libraries precisely because the LGPL doesn't have the
virality which he wants (and you object to).

FWIW I applaud the new licensing arrangements.  They are quite simple
while respecting the concerns both of people who want to write
commercial code (with their nice free compiler ;) --- cf Clean) and of
the authors who want to be guaranteed credit for their great work.

 > I think there is a gross misunderstanding of 'freedom'
 > here. Do we want 'free software' to consist of a combination
 > of code submitted by amateurs, and people employed by
 > institutions, most of which are funded by theft (taxation)?
 > Why are people that expect to work on software and actually
 > get paid for it by the users, being discriminated against?

1) have a little think about that "institutional theft" jibe
   (hint: what does the N in INRIA stand for?)
2) re amateur code, go and have a look round the internet sometime;
   you will find there is quite a lot of it about nowadays




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Objective Caml 2.03/4 released
  1999-12-05 23:34   ` Markus Mottl
@ 1999-12-06 20:55     ` skaller
  0 siblings, 0 replies; 7+ messages in thread
From: skaller @ 1999-12-06 20:55 UTC (permalink / raw)
  To: Markus Mottl; +Cc: OCAML

Markus Mottl wrote:
> 
> > Why was such a grossly restrictive, anti-freedom licence chosen?
> > Or do I mis-understand it?
> 
> Well, some people would think the other way round... ;-)

	Of course: those with jobs working for Universities
of other institutions often forget where THEIR pay packets
come from. So they want to create a pool of software
exclusive to them. This is not freedom.

> > I've been working on a product using ocaml for some time,
> > and I need to make money out of it. The new licence seems
> > to preclude this, forcing me to give away my source.
> 
> I wouldn't say that there is reason for fearing that you cannot distribute
> your sources as binary only:

	I am glad you have this interpretation.
 
> The runtime system and other things that go into the executable are subject
> to the GNU *Library* General Public License.
> 
> This section might be relevant to you:
> 
>     4. You may copy and distribute the Library (or a portion or
>   derivative of it, under Section 2) in object code or executable form
>   under the terms of Sections 1 and 2 above provided that you accompany it
>   with the complete corresponding machine-readable source code, 

	This includes modifications to the library.

> So if I get it right, the only thing you have to do when shipping your
> binaries is to either ship the sources *of the runtime libraries*, too, or
> to provide an URL to the distribution directory of INRIA so that people can
> always access the sources of the linked in libraries.

	I hope you get it right :-)
 
> > There was, some time in the past, a discussion
> > about persuading management to switch to ocaml.
> > The new licence is a guarrantee it will NEVER be used
> > for serious software development. No one can afford
> > to develop a production quality software, and then
> > be forced to give the it away.
> 
> If this were true, no commercial company would want to use gcc - and I am
> sure that there are plenty which do.

	Binaries produced by gcc can link dynamically to the
libraries, and so do not contain them.
 
> Reality also shows that it *is* possible to develop free software in
> production quality (and higher...).

	Yes, when the funding comes from some large organisation.
I'm a small organisation :-)

	When I have enough money coming in to be able to eat,
keep a roof over my head, and pay for computing facilities,
then perhaps I feel more confident giving away sources on the
basis that eventually enough people will want to pay me for support.

> in my eyes the results of public
> research *should* also stay free for the public.

	In my eyes, the people that fund the research own the results:
the public usually. But that is not the same as GPL'd software, which
prohibits
people adding value hiding the added value.

> I'd say that making money by writing software will sooner or later change
> to making money by providing support and consulting. Even Richard Stallman
> does not object to this - and, as far as I know, makes a living from it...

	I agree that this is desirable. I would like to reach that
position. But until I do, for example, while seeking funding for
further research and development, I'd like the option of preventing
other, better funded, organisations simply stealing my efforts.

-- 
John Skaller, mailto:skaller@maxtal.com.au
10/1 Toxteth Rd Glebe NSW 2037 Australia
homepage: http://www.maxtal.com.au/~skaller
voice: 61-2-9660-0850




^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~1999-12-07 12:25 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-11-19 17:30 Objective Caml 2.03 released Xavier Leroy
1999-11-19 21:15 ` Matías Giovannini
1999-12-04 17:46 ` Objective Caml 2.03/4 released skaller
1999-12-05 23:34   ` Markus Mottl
1999-12-06 20:55     ` skaller
1999-12-06  0:02   ` Stefan Monnier
1999-12-06  9:21   ` William Chesters

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).