Binary distributions

2.0-alpha3-bin 3803 downloads
2.0-alpha2-bin 3123 downloads
2.0-alpha1-bin 17435 downloads

  Source distributions

2.0-alpha3-src 2991 downloads
2.0-alpha2-src 2308 downloads
2.0-alpha1-src 2447 downloads

  Old binary distributions

2.0-early-access11 2930 downloads
2.0-early-access10 2896 downloads
2.0-early-access9 2976 downloads
2.0-early-access8 2830 downloads
2.0-early-access7 2940 downloads
2.0-early-access6 2882 downloads
2.0-early-access5 2865 downloads
2.0-early-access4 2860 downloads
2.0-early-access3 2886 downloads
2.0-early-access2 2673 downloads


2.0-alpha3 2015-06-08
  • typer extensions: use dedicated types for Java primitives types, defined as synonyms to core OCaml types (e.g. type java_int = int32)
  • typer extensions: introduce 'exec' and 'chain' as variant of 'call'; 'exec' ignores the return value if any, while 'chain' pushes the instance onto the stack after the call
  • typer extensions: introduce 'iter' and 'fold' for Java iterators
  • javalib: install files into a dedicated directory (namely 'javalib')
  • javalib: enhance 'JavaIOStreams' module
  • javalib: rename 'JavaCharacter' module to 'JavaChar'
  • javalib: move functions from the 'JavaString' module to a new 'JavaString.OCaml' module, and defines bindings to the String class in the 'JavaString' module
  • javalib: add 'JavaPervasives' module, initially opened when Java extensions are enabled
  • javalib: add 'JavaObject' module, providing complete bindings to the Object class
  • javalib: add 'JavaCalendar', 'JavaDate', 'JavaLocale', and 'JavaTimeZone' modules, providing support for date manipulations
  • javalib: renamed 'JavaByteArray.{to,of}_string' functions to 'JavaByteArray.{to,of}_ocaml_string'
  • javalib: add 'JavaStringFormat' and 'JavaStringPrintf' modules, providing support for printing of Java strings
  • javalib: add 'JavaRandom' module providing bindings to the java.util.Random class
  • javalib: add 'JavaSystem' module providing bindings to the System class
  • javalib: add 'JavaRuntime' module providing bindings to the Runtime class
  • javalib: add 'JavaProperties' module providing bindings to the java.util.Properties class
  • javalib: add 'JavaStringBuilder' module providing bindings to the StringBuilder class
  • javalib: add 'JavaThrowable', 'JavaError', and 'JavaException' modules providing bindings to Java base exception classes
  • javalib: enhance documentation
  • concurrent: build a library rather than a pack, and install files into a dedicated directory (namely 'concurrent')
  • concurrent: large/incompatible rewrite
  • enhanced ocamlbuild: support for shared libraries for ocamljava
  • enhanced ocamlbuild: support for '-html5', '-sort', and '-t' command-line switches of ocamldoc
  • enhanced ocamldoc: generate links to online Javadoc for Java types
  • enhanced ocamldoc: {java fully-qualified-class-name} to refer to Java types
  • enhanced ocamldoc: {s ...}, {u ...}, and {k ...} for respectively stroke, underline, and keyboard styles
  • enhanced ocamldoc: support for tables
  • source distribution: 'ocamlj' script to launch the Java-aware toplevel
  • fix compilation of 'Java.set'
  • fix compilation of tail calls
  • issue #16: ocamljava has exit code 0 even on an error
  • issue #18: order of exception handlers is not preserved
  • issue #19: allow compilation of large constant sets
  • issue #20: some *.cmj files from camlp4 are not installed
  • issue #21: some *.cmj files from ocamldoc are not installed
2.0-alpha2 2014-09-22
  • HTML5 / Bootstrap mode for ocamldoc
  • bug in proxies: method dispatch failing when overriding a method from java.lang.Object
  • bugs #1 and #2: require Ant 1.9.0 or later
  • bug#5: incorrect code generation for match construct
  • bug#6: broken Java instance comparisons
  • bug#7: support for inner-classes in presence of opened packages
  • bug#9: incorrect inference of Java instance (as unboxed parameter value)
  • bug#10: proxy variants (allowing to specify a class loader)
  • bug#11: inner-classes and plain classes cannot be discriminated
  • bug#12: ocamlbuild does not pass -cp and -classpath options when compiling an interface with -java-extensions
2.0-alpha1 2014-07-14
  • source release
  • update for OCaml 4.01
  • update for Barista 2.0-beta2
  • support for Java 1.8
  • support for servlets is back
  • large refactoring (cleaning/simplifying compiler code)
  • new tool: ocamlj (toplevel with typer extension, using Java bytecode rather then OCaml bytecode)
  • typer extension: new C.m(-) notation to match any arity
  • typer extension: new C.m(T...) notation to pass literal array
  • typer extension: fixed bug related to Java_exception typing
  • typer extension: Java_exeption split into Java_exception/Java_error (for java.lang.Exception/java.lang.Error)
  • typer extension: proxy methods are now sorted according to their signature (impacts only interfaces with overloading)
  • typer extension: overriding of methods from java.lang.Object in proxies is now done on a per-method basis
  • code generation: enhanced unboxing strategy
  • code generation: fixed bug in max_stack/max_locals values (in classes holding globals)
  • code generation: improved compilation of some primitives
  • Java library: new JavaServlet module
  • Java library: more operations for array types
  • Java library: JavaStreams module renamed to JavaIOStreams
  • runtime: improved support for exceptions
  • runtime: improved memory layout
  • runtime: Fail.Exception renamed to FailException (impacts only developers of primitives)
  • runtime: Fatal.Exception renamed to FatalError, and now extends java.lang.Error rather than java.lang.Exception (impacts only developers of primitives)
  • ocamlbuild: fixed compilation of mli-less module using Java extensions
  • ocamlbuild: new use_javalib and use_concurrent tags for corresponding libraries
  • optimizer: new -no-unused-global to remove unused global values
  • optimizer: new -no-backtrace to remove support for backtrace
  • optimizer: new -no-debug to remove debug statements from runtime
  • wrapper: accept argument under the form file.cmi@pack to specify package for a given file
  • documentation in both source and binary releases
2.0-early-access11 2014-02-24
  • fixed bug in method cache (resulting in a runtime error)
2.0-early-access10 2014-01-27
  • ocamlwrap: new -library-xyz options to control initialization of wrapped library
  • fixed bug in proxies (incorrect method name when overloaded)
  • fixed bug in proxies (NullPointerException when return type is boolean)
  • fixed bug in proxies (when passed interface extends another one)
  • fixed bug in typer extension (when using values of type byte/char/short)
  • fixed mantis-bug#125 (ocamlwrap now issues a proper error when a type cannot be found)
  • fixed mantis-bug#126 (ocamlwrap can now generate wrapper for functions with arity up to 10)
  • fixed mantis-bug#127 (ocamlwrap now properly escapes Java keywords)
2.0-early-access9 2013-08-27
  • proxies now support multiple interfaces
  • proxies now allow to override methods from java.lang.Object
  • Java.instanceof and Java.cast now accept array types
  • a new warning (with number 1000) has been introduced, to be issued when a deprecated Java element is used
  • the Java.make_array1 function has been replaced by the more flexible Java.make_array_dims whose string descriptor allows to choose the number of dimentions to instantiate
  • a new JavaStreams module has been added to allow conversion between Java streams and OCaml channels
  • utility functions have been added to the JavaString module
  • support for applets is back
  • fixed bug in Unix.localtime (incorrect hour value when PM)
  • fixed bug in interface method calls (incorrect argument count when long or double value)
  • fixed bug in proxies (Java primitives values incorrectly passed)
  • fixed bug in proxies (values incorrectly returned)
  • fixed bug in proxies (when methods from java.lang.Object are called)
2.0-early-access8 2013-07-31
  • typer extension and associated library for manipulation of Java entities
  • ocamlbuild updated to support typer extension
  • ocamldoc updated to support typer extension
2.0-early-access7 2013-06-30
  • parameter and return values to/from primitives can now be unboxed
  • parameter and return values to/from functions can now be unboxed
  • values with type int array now benefit from an optimized representation
  • improved handling of exceptions
  • improved handling of module constants
  • improved handling of module globals
  • improved startup time
  • slightly improved code generation for pattern matching
  • fixed bug in compilation of for loops with known bounds
  • fixed bug in compilation of never-returning functions
2.0-early-access6 2013-05-31
  • new ocamlwrap tool
  • slightly improved code generation
  • new -linkall command-line option for ocamljava, also meaning that the default is no more to link all modules
  • and STM.run_read_only now ensure that accessors are called from the thread that created the transaction
  • [Scheduled]Future.get[_time] now raise Runtime.Raised if the future raises an exception
  • parallel operations of ParallelArray now raise Runtime.Raised if a passed function raises an exception
  • MapReduce.S.compute now raises Runtime.Raised if a passed function raises an exception
  • ForkJoin functions now raise Runtime.Raised if a passed function raises an exception
2.0-early-access5 2013-04-24
  • ParallelArray.init is now a parallel operation
  • ParallelArray now provides more parallel operations (mem, memq, exists, for_all, find, find_index, and find_all)
  • and STM.run_read_only now return the value computed by the transaction
  • Thread.interrupted now returns a boolean
  • better handling of exceptions in Concurrent library
  • new tool: ocamljar, a post-compilation optimizer
  • support for ocamldebug is back
  • support for scripting is back
  • fixed mantis-bug#82 (dependency of scripting support)
2.0-early-access4 2013-03-28
  • enhanced Concurrent library
  • fixed mantis-bug#102 (Sys.os_type is always "Unix")
  • fixed mantis-bug#117 (ocamlbuild is not provided)
  • fixed mantis-bug#118 (Sys.command should call a shell)
  • reduced startup time
2.0-early-access3 2013-03-07
  • fixed mantis-bug#103 (Unix.descr_of_in_channel is broken)
  • fixed mantis-bug#113 (comparison fails on large int values)
  • fixed mantis-bug#114 (cannot use with bare JRE)
  • fixed mantis-bug#114 (read_int is broken)
  • fixed mantis-bug#115 (ocaml cannot execute file)
  • minor performance improvements (compiler and runtime)

About this site
© 2014-2015 Xavier Clerc
webmaster AT
Atom feed
Based on Bootstrap
Elements by Free Grunge Textures