caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] OCaml release roadmap
@ 2015-05-06 17:24 Damien Doligez
  2015-05-11 11:46 ` Francois Berenger
  2015-05-13 13:20 ` Jonas Jensen
  0 siblings, 2 replies; 9+ messages in thread
From: Damien Doligez @ 2015-05-06 17:24 UTC (permalink / raw)
  To: caml-list

Dear OCaml users,

We are now preparing release 4.02.2, mostly a bug-fix release with a
few new features. We are planning to release it in the first week of
June (about 1 month from now). If you want to try a preview, get it:
  - from github: < https://github.com/ocaml/ocaml/tree/4.02 > (don't
forget to switch to branch 4.02 after cloning)
  - through OPAM: opam switch 4.02.0+trunk (watch out for the misnomer)
If you find bugs, please report them as quickly as possible.

As for the next major release, it will include a number of new
features (including, if all goes well, support for multicore). It will
be released some time around the end of this year.

-- Damien Doligez for the OCaml development team

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

* Re: [Caml-list] OCaml release roadmap
  2015-05-06 17:24 [Caml-list] OCaml release roadmap Damien Doligez
@ 2015-05-11 11:46 ` Francois Berenger
  2015-05-11 13:31   ` Mark Shinwell
  2015-05-13 13:20 ` Jonas Jensen
  1 sibling, 1 reply; 9+ messages in thread
From: Francois Berenger @ 2015-05-11 11:46 UTC (permalink / raw)
  To: caml-list

On 05/06/2015 07:24 PM, Damien Doligez wrote:
> Dear OCaml users,
>
> We are now preparing release 4.02.2, mostly a bug-fix release with a
> few new features. We are planning to release it in the first week of
> June (about 1 month from now). If you want to try a preview, get it:
>    - from github: < https://github.com/ocaml/ocaml/tree/4.02 > (don't
> forget to switch to branch 4.02 after cloning)
>    - through OPAM: opam switch 4.02.0+trunk (watch out for the misnomer)
> If you find bugs, please report them as quickly as possible.
>
> As for the next major release, it will include a number of new
> features (including, if all goes well, support for multicore). It will
> be released some time around the end of this year.

Who added the support for multicore?

Will it have an impact on the performance of sequential programs (i.e. 
which don't use multicore)?

Does it mean we will be able to write parallel code that scales better
than what we currently can get with parmap?
I.e. we could see a speedup even if the task is very fine grain.

Will we have to rewrite Parmap ? ;)

> -- Damien Doligez for the OCaml development team
>

-- 
Regards,
Francois.

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

* Re: [Caml-list] OCaml release roadmap
  2015-05-11 11:46 ` Francois Berenger
@ 2015-05-11 13:31   ` Mark Shinwell
  2015-05-11 13:31     ` Mark Shinwell
  2015-05-26 17:13     ` Richard W.M. Jones
  0 siblings, 2 replies; 9+ messages in thread
From: Mark Shinwell @ 2015-05-11 13:31 UTC (permalink / raw)
  To: Francois Berenger; +Cc: caml-list

I can answer two of your points:

I think it's unlikely that multicore support is going to be in a
production-ready state for 4.03, although I may be proven wrong.  It
seems plausible that a beta version of the support will be ready at
that time, however.

Degradation of the performance of code not using the new parallelism
features (but possibly using the existing thread support) is a matter
of serious concern for some users, and best efforts will be made to
minimize or eliminate it.  We will know more on this front in the next
few months.

Mark

On 11 May 2015 at 07:46, Francois Berenger <francois.berenger@inria.fr> wrote:
> On 05/06/2015 07:24 PM, Damien Doligez wrote:
>>
>> Dear OCaml users,
>>
>> We are now preparing release 4.02.2, mostly a bug-fix release with a
>> few new features. We are planning to release it in the first week of
>> June (about 1 month from now). If you want to try a preview, get it:
>>    - from github: < https://github.com/ocaml/ocaml/tree/4.02 > (don't
>> forget to switch to branch 4.02 after cloning)
>>    - through OPAM: opam switch 4.02.0+trunk (watch out for the misnomer)
>> If you find bugs, please report them as quickly as possible.
>>
>> As for the next major release, it will include a number of new
>> features (including, if all goes well, support for multicore). It will
>> be released some time around the end of this year.
>
>
> Who added the support for multicore?
>
> Will it have an impact on the performance of sequential programs (i.e. which
> don't use multicore)?
>
> Does it mean we will be able to write parallel code that scales better
> than what we currently can get with parmap?
> I.e. we could see a speedup even if the task is very fine grain.
>
> Will we have to rewrite Parmap ? ;)
>
>> -- Damien Doligez for the OCaml development team
>>
>
> --
> Regards,
> Francois.
>
>
> --
> Caml-list mailing list.  Subscription management and archives:
> https://sympa.inria.fr/sympa/arc/caml-list
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports: http://caml.inria.fr/bin/caml-bugs

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

* Re: [Caml-list] OCaml release roadmap
  2015-05-11 13:31   ` Mark Shinwell
@ 2015-05-11 13:31     ` Mark Shinwell
  2015-05-26 17:13     ` Richard W.M. Jones
  1 sibling, 0 replies; 9+ messages in thread
From: Mark Shinwell @ 2015-05-11 13:31 UTC (permalink / raw)
  To: Francois Berenger; +Cc: caml-list

Sorry, I missed one paragraph: the multicore support is being
developed at OCaml Labs in Cambridge, UK.

Mark

On 11 May 2015 at 09:31, Mark Shinwell <mshinwell@janestreet.com> wrote:
> I can answer two of your points:
>
> I think it's unlikely that multicore support is going to be in a
> production-ready state for 4.03, although I may be proven wrong.  It
> seems plausible that a beta version of the support will be ready at
> that time, however.
>
> Degradation of the performance of code not using the new parallelism
> features (but possibly using the existing thread support) is a matter
> of serious concern for some users, and best efforts will be made to
> minimize or eliminate it.  We will know more on this front in the next
> few months.
>
> Mark
>
> On 11 May 2015 at 07:46, Francois Berenger <francois.berenger@inria.fr> wrote:
>> On 05/06/2015 07:24 PM, Damien Doligez wrote:
>>>
>>> Dear OCaml users,
>>>
>>> We are now preparing release 4.02.2, mostly a bug-fix release with a
>>> few new features. We are planning to release it in the first week of
>>> June (about 1 month from now). If you want to try a preview, get it:
>>>    - from github: < https://github.com/ocaml/ocaml/tree/4.02 > (don't
>>> forget to switch to branch 4.02 after cloning)
>>>    - through OPAM: opam switch 4.02.0+trunk (watch out for the misnomer)
>>> If you find bugs, please report them as quickly as possible.
>>>
>>> As for the next major release, it will include a number of new
>>> features (including, if all goes well, support for multicore). It will
>>> be released some time around the end of this year.
>>
>>
>> Who added the support for multicore?
>>
>> Will it have an impact on the performance of sequential programs (i.e. which
>> don't use multicore)?
>>
>> Does it mean we will be able to write parallel code that scales better
>> than what we currently can get with parmap?
>> I.e. we could see a speedup even if the task is very fine grain.
>>
>> Will we have to rewrite Parmap ? ;)
>>
>>> -- Damien Doligez for the OCaml development team
>>>
>>
>> --
>> Regards,
>> Francois.
>>
>>
>> --
>> Caml-list mailing list.  Subscription management and archives:
>> https://sympa.inria.fr/sympa/arc/caml-list
>> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>> Bug reports: http://caml.inria.fr/bin/caml-bugs

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

* Re: [Caml-list] OCaml release roadmap
  2015-05-06 17:24 [Caml-list] OCaml release roadmap Damien Doligez
  2015-05-11 11:46 ` Francois Berenger
@ 2015-05-13 13:20 ` Jonas Jensen
  2015-05-14 20:51   ` Damien Doligez
  1 sibling, 1 reply; 9+ messages in thread
From: Jonas Jensen @ 2015-05-13 13:20 UTC (permalink / raw)
  To: Damien Doligez; +Cc: caml-list

On 6 May 2015 at 19:24, Damien Doligez <damien.doligez@inria.fr> wrote:
> As for the next major release, it will include a number of new
> features (including, if all goes well, support for multicore). It will
> be released some time around the end of this year.

Is there a good reason not to release current trunk as 4.03 soon?
According to http://caml.inria.fr/mantis/view.php?id=5528, the "Inline
records for constructor arguments" feature has been merged to trunk. I
think this is a huge improvement to the language that will improve
code readability for at lot of projects. An end-of-year release seems
very far away, especially if the release date slips because multicore
support is such a disruptive change.

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

* Re: [Caml-list] OCaml release roadmap
  2015-05-13 13:20 ` Jonas Jensen
@ 2015-05-14 20:51   ` Damien Doligez
  2015-05-14 21:20     ` Gabriel Scherer
  0 siblings, 1 reply; 9+ messages in thread
From: Damien Doligez @ 2015-05-14 20:51 UTC (permalink / raw)
  To: Jonas Jensen; +Cc: caml-list

On Wed, May 13, 2015 at 9:20 AM, Jonas Jensen <jj@issuu.com> wrote:

> Is there a good reason not to release current trunk as 4.03 soon?

Manpower is one such reason. Also, we like to thoroughly test our
code before we release it. And there are several important features
in the works.

> According to http://caml.inria.fr/mantis/view.php?id=5528, the "Inline
> records for constructor arguments" feature has been merged to trunk. I
> think this is a huge improvement to the language that will improve
> code readability for at lot of projects.

I see it as a rather small feature. It's not in the same league as GADTs
or Modular Implicits, for example.

> An end-of-year release seems
> very far away, especially if the release date slips because multicore
> support is such a disruptive change.

I know our release schedule is rather slow, but OCaml is a really
complex system and we like to think things through before we
release, and this has already saved us from several bad design
decisions.

-- Damien

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

* Re: [Caml-list] OCaml release roadmap
  2015-05-14 20:51   ` Damien Doligez
@ 2015-05-14 21:20     ` Gabriel Scherer
  0 siblings, 0 replies; 9+ messages in thread
From: Gabriel Scherer @ 2015-05-14 21:20 UTC (permalink / raw)
  To: Damien Doligez; +Cc: Jonas Jensen, caml users

[-- Attachment #1: Type: text/plain, Size: 1829 bytes --]

Note that the readability benefits of inline records on value-manipulating
code can already be reaped by just using variant constructors with only one
argument, a record. The feature is more of an optimization of the memory
representation of this case (won't matter much for most applications) --
and also, admittedly, the readability of the type declaration. Its future
availability could be taken as a mere encouragement to use this style
already today.

On Thu, May 14, 2015 at 10:51 PM, Damien Doligez <damien.doligez@inria.fr>
wrote:

> On Wed, May 13, 2015 at 9:20 AM, Jonas Jensen <jj@issuu.com> wrote:
>
> > Is there a good reason not to release current trunk as 4.03 soon?
>
> Manpower is one such reason. Also, we like to thoroughly test our
> code before we release it. And there are several important features
> in the works.
>
> > According to http://caml.inria.fr/mantis/view.php?id=5528, the "Inline
> > records for constructor arguments" feature has been merged to trunk. I
> > think this is a huge improvement to the language that will improve
> > code readability for at lot of projects.
>
> I see it as a rather small feature. It's not in the same league as GADTs
> or Modular Implicits, for example.
>
> > An end-of-year release seems
> > very far away, especially if the release date slips because multicore
> > support is such a disruptive change.
>
> I know our release schedule is rather slow, but OCaml is a really
> complex system and we like to think things through before we
> release, and this has already saved us from several bad design
> decisions.
>
> -- Damien
>
> --
> Caml-list mailing list.  Subscription management and archives:
> https://sympa.inria.fr/sympa/arc/caml-list
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports: http://caml.inria.fr/bin/caml-bugs
>

[-- Attachment #2: Type: text/html, Size: 2780 bytes --]

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

* Re: [Caml-list] OCaml release roadmap
  2015-05-11 13:31   ` Mark Shinwell
  2015-05-11 13:31     ` Mark Shinwell
@ 2015-05-26 17:13     ` Richard W.M. Jones
  2015-06-04 20:34       ` Damien Doligez
  1 sibling, 1 reply; 9+ messages in thread
From: Richard W.M. Jones @ 2015-05-26 17:13 UTC (permalink / raw)
  To: Mark Shinwell; +Cc: Francois Berenger, caml-list

On Mon, May 11, 2015 at 09:31:03AM -0400, Mark Shinwell wrote:
> I can answer two of your points:
> 
> I think it's unlikely that multicore support is going to be in a
> production-ready state for 4.03, although I may be proven wrong.  It
> seems plausible that a beta version of the support will be ready at
> that time, however.
> 
> Degradation of the performance of code not using the new parallelism
> features (but possibly using the existing thread support) is a matter
> of serious concern for some users, and best efforts will be made to
> minimize or eliminate it.  We will know more on this front in the next
> few months.

Will there be implications for C bindings?  We have rather a lot ...

Rich.

-- 
Richard Jones
Red Hat

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

* Re: [Caml-list] OCaml release roadmap
  2015-05-26 17:13     ` Richard W.M. Jones
@ 2015-06-04 20:34       ` Damien Doligez
  0 siblings, 0 replies; 9+ messages in thread
From: Damien Doligez @ 2015-06-04 20:34 UTC (permalink / raw)
  To: Richard W.M. Jones; +Cc: Mark Shinwell, Francois Berenger, caml-list

On Tue, May 26, 2015 at 1:13 PM, Richard W.M. Jones <rich@annexia.org> wrote:

> Will there be implications for C bindings?  We have rather a lot ...

There will be implications, the most obvious being that the `Field`
macro will stop being an l-value so you'll have to rewrite your uses
of caml_modify and caml_initialize:

  caml_modify(&Field(v, idx), w) => caml_modify_field(v, idx, w)
  caml_initialize(&Field(v, idx, w) => caml_initialize_field(v, idx, w)

See https://github.com/ocaml/ocaml/pull/120 for more details.

I'm sure there will be other changes needed to accomodate multicore.

But we are planning to keep the sequential runtime alongside the
parallel one, at least for some time, so if you're not in a hurry to
use multicore, you'll have plenty of time to update your bindings.

-- Damien

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

end of thread, other threads:[~2015-06-04 20:34 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-06 17:24 [Caml-list] OCaml release roadmap Damien Doligez
2015-05-11 11:46 ` Francois Berenger
2015-05-11 13:31   ` Mark Shinwell
2015-05-11 13:31     ` Mark Shinwell
2015-05-26 17:13     ` Richard W.M. Jones
2015-06-04 20:34       ` Damien Doligez
2015-05-13 13:20 ` Jonas Jensen
2015-05-14 20:51   ` Damien Doligez
2015-05-14 21:20     ` Gabriel Scherer

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).