caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] OCaml 4.06.0+beta2
@ 2017-10-13 18:00 Gabriel Scherer
  2017-10-16 17:32 ` [Caml-list] OCaml's manual 4.06.0+beta2 octachron
  0 siblings, 1 reply; 2+ messages in thread
From: Gabriel Scherer @ 2017-10-13 18:00 UTC (permalink / raw)
  To: caml users

Dear OCaml users,

We have created a second beta version of the upcoming OCaml 4.06.0
release for your repeated testing pleasure. It is available as opam
switches 4.06.0.+beta2 (or +beta2+flambda, etc.)

  opam switch 4.06.0+beta2

or as source archives at

  http://caml.inria.fr/pub/distrib/ocaml-4.06/

The Changelog since 4.05.0 is available at

  http://caml.inria.fr/pub/distrib/ocaml-4.06/notes/Changes.4.06.0+beta2.txt

The more specific list of changes since 4.06.0+beta1 is included at
the end of this email.

Thanks to all of you who have been actively testing OCaml software and
making strings immutable.

Happy hacking,

-- Gabriel Scherer for the OCaml team.


(Changes that can break existing programs are marked with a "*")

### fixes of regressions introduced in 4.06

- the output of `ocamlc -config` in 4.06.0+beta1 did not include
  the 'bytecomp_c_compiler' and 'native_c_compiler' variables anymore,
  which broke some configuration/installation scripts. The variables
  are now restored. When possible, script authors are encouraged to
  use the new, more meaningful variables 'c_compiler' and
  'ocaml{c,opt}_cflags'.
  (Jeremy Yallop and Sébastien Hinderer)

- GPR#1174 (Stop pushing default arguments when there is an
  unlabeled argument) was reverted, as it was causing an unplanned
  increase in allocations when defining functions with optional
  arguments.
  (Jacques Garrigue and Leo White)

- a compilation failure on the Frama-C and CIL codebases introduced in
  4.06.0+beta1 was fixed.
  (Gabriel Scherer and Jeremy Yallop)

### Code generation and optimizations:

- MPR#7642, GPR#1411: ARM port: wrong register allocation for integer
  multiply on ARMv4 and ARMv5; possible wrong register allocation for
  floating-point multiply and add on VFP and for floating-point
  negation and absolute value on soft FP emulation.
  (Xavier Leroy, report by Stéphane Glondu and Ximin Luo,
   review and additional sightings by Mark Shinwell)

### Tools:

- MPR#7048: ocamldoc, in -latex mode, don't escape Latin-1 accented letters
  (Xavier Leroy, report by Hugo Herbelin)

* MPR#7363, GPR#830: ocamldoc, start heading levels at {1 not {2 or {6.
  This change modifies the mapping between ocamldoc heading level and
  html heading level, breaking custom css style for ocamldoc.
  (Florian Angeletti, request and review by Daniel Bünzli)

- MPR#7635, GPR#1383: ocamldoc, add an identifier to module
  and module type elements
  (Florian Angeletti, review by Yawar Amin and Gabriel Scherer)

(this change was already in 4.06.0+beta1, but missing from the Changelgo)
- GPR#1231: improved printing of unicode texts in the toplevel,
  unless OCAMLTOP_UTF_8 is set to false.
  (Florian Angeletti, review by Daniel Bünzli, Xavier Leroy and
   Gabriel Scherer)

### Runtime system:

* GPR#1416: switch the Windows 10 Console to UTF-8 encoding.
  (David Allsopp, reviews by Nicolás Ojeda Bär and Xavier Leroy)

* MPR#7640, GPR#1414: reimplementation of Unix.execvpe to fix issues
  with the 4.05 implementation.  The main issue is that the current
  directory was always searched (last), even if the current directory
  is not listed in the PATH.
  (Xavier Leroy, report by Mantis users 'AltGr' and 'aalekseyev',
   review by Ivan Gotovchits)

### Bug fixes

- MPR#7612, GPR#1345: afl-instrumentation bugfix for classes.
  (Stephen Dolan, review by Gabriel Scherer and David Allsopp)

- GPR#1390: fix the [@@unboxed] type check to accept parametrized types
  (Leo White, review by Damien Doligez)

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

* Re: [Caml-list] OCaml's manual 4.06.0+beta2
  2017-10-13 18:00 [Caml-list] OCaml 4.06.0+beta2 Gabriel Scherer
@ 2017-10-16 17:32 ` octachron
  0 siblings, 0 replies; 2+ messages in thread
From: octachron @ 2017-10-16 17:32 UTC (permalink / raw)
  To: caml-list

Dear OCaml users,

With the upcoming release of OCaml 4.06, the reference manual at
http://caml.inria.fr/pub/docs/manual-ocaml
will be updated.

As an experiment, a beta release of this new version of the
manual has been uploaded at 
http://www.polychoron.fr/ocaml-beta-manual/4.06 .
(Note that the peculiar colour scheme is only there to mark this version 
as a
beta version.)

This new incarnation of the manual counts no less than two new chapters and
one new section:

  - chapter 5, "Polymorphism and its limitation",
    details potential polymorphism related troubles and their solutions 
or workarounds;
    from weakly polymorphic types (the infamous "'_a" type variables) 
and their link
    with the relaxed value restriction, to polymorphic recursion and 
higher-ranked
    polymorphic function:
    http://www.polychoron.fr/ocaml-beta-manual/4.06/polymorphism.html

  - section 10.6, "The native toplevel: ocamlnat",
    describes the experimental native toplevel and in particular how to 
build it:
http://www.polychoron.fr/ocaml-beta-manual/4.06/toplevel.html#sec296

  - chapter 24, "Compiler plugins",
    covers briefly the basic of ocaml-side plugins with a basic 
hello-world plugin example:
    http://www.polychoron.fr/ocaml-beta-manual/4.06/plugins.html


Moreover, four sections of the language extension chapter have been (mostly)
integrated into the first part of the manual:

   - field punning and functional update for records ("{ r with x = y }" and
   "{ x; y }"):
http://www.polychoron.fr/ocaml-beta-manual/4.06/coreexamples.html#sec11

   - local opens ("let open M in … " and "M.(…)"):
http://www.polychoron.fr/ocaml-beta-manual/4.06/moduleexamples.html#sec18

   - overriding class definitions ("method!" and "val!"):
http://www.polychoron.fr/ocaml-beta-manual/4.06/objectexamples.html#sec32

   - explicit polymorphic type annotations ("f: 'a. 'a -> 'a") are now 
part of
   the new chapter 5, "Polymorphism and its limitation" .

Lastly, the "num" library will no longer be distributed with the compiler.
Consequently, its documentation has been replaced by links to the new "num"
repository and "Zarith" repository.

This release also includes also a lot of smaller bug fixes and 
documentations for new
features described in the full change logs for 4.06 .

All comments on this new iteration of the manual are more than welcome.

Best wishes,
Florian "octachron" Angeletti.


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

end of thread, other threads:[~2017-10-16 17:32 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-13 18:00 [Caml-list] OCaml 4.06.0+beta2 Gabriel Scherer
2017-10-16 17:32 ` [Caml-list] OCaml's manual 4.06.0+beta2 octachron

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