GithubHelp home page GithubHelp logo

ocaml-batteries-team / batteries-included Goto Github PK

View Code? Open in Web Editor NEW
512.0 512.0 106.0 25.08 MB

Batteries Included project

Home Page: http://ocaml-batteries-team.github.com/batteries-included/hdoc2/

License: Other

Shell 0.20% Emacs Lisp 0.03% OCaml 99.65% Standard ML 0.04% Makefile 0.07%

batteries-included's People

Contributors

agarwal avatar an146 avatar asmanur avatar c-cube avatar chaudhuri avatar fccm avatar fourchaux avatar gasche avatar jeremiedimino avatar kit-ty-kate avatar little-arhat avatar mdekstrand avatar mfp avatar murmour avatar pelzlpj avatar rgrinberg avatar rixed avatar scjung avatar sim642 avatar tchajed avatar thelema avatar thizanne avatar toton avatar unixjunkie avatar v-gb avatar vincent-hugot avatar vogler avatar xvw avatar zacchiro avatar zangpe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

batteries-included's Issues

Camlnet & batteries

What should be done with this? Does anyone use it with batteries / want to use it with batteries? How can batteries benefit from camlnet?

Provide access to legacy channels

For interoperability with libraries that don't use Batteries, it would be useful to have functions to open and close legacy I/O channels.

Byte Indexing in ropes

This is useful for efficiency, but dangerous, as many byte indexes aren't valid character indexes. How should we handle it?

Enum.uncombine fails to properly pass data through

I have some code that looks like this:

let ve, we = Enum.uncombine (List.enum list_of_pairs) in
  Array.of_enum ve, Array.of_enum we

The resulting arrays are incorrect, compare with the result of this code (which works):

let arr = Array.of_list list_of_pairs in
let vs = Array.map fst trunc in
let ws = Array.map snd trunc in
    (vs,ws)

I have not tried using Enum.dup and Enum.map to achieve the effect; that should help narrow down the problem.

ocaml-fileutils

This would make a great addition to batteries, but how should this be done? Should it stay a separate project, or could it become a subproject of batteries?

Add a Pair Module

This module would be ('a, 'b), and would have things like range checking for (int, int), printing pairs, sorting lexicographically, etc.

LWT support

We should provide monadic interfaces to our data structures so LWT can interface with them better

installation fails when native code compilation is disabled

When native code compilation is disabled, as documented in the README, batteries installation fails with the following error.

ocamlfind: src/*.a: No such file or directory

  • exit . , 0.03 sec, code 2
    *** omake: 600/601 targets are up to date
    *** omake: failed (0.56 sec, 0/180 scans, 4/194 rules, 5/826 digests)
    *** omake: targets were not rebuilt because of errors:
    <phony >
    make[1]: *** [override_dh_auto_install] Error 2
    make[1]: Leaving directory `/home/srv/debian/pkg-ocaml-maint/packages/git/ocaml-batteries'
    make: *** [binary] Error 2

I'll follow-up with the patch I'm going to apply to the Debian package.

Cheers.

#man "batteries" in the toplevel point to the wrong address

When '#man "batteries"' is entered in the top level, the url "file:///usr/share/doc/ocaml-batteries/html/index.html" is opened in the default web browser. The real address, however, should be "file:///usr/share/doc/ocaml-batteries/index.html".

Collapse Map modules

We have IMap,ISet,PMap,PSet, etc. PMap/set should be inside Map/set to mirror Hashtbl's structure. As well, IMap/ISet could be integrated too.

BatISet

compare empty empty returns -1 !!!

BatPervasives.input_line raises IO.No_more_input

BatPervasives.input_line is documented to rase End_of_file if the end of the file is reached, like the original Pervasives.input_line. However, since it simply delegates to IO.read_line, it raises IO.No_more_input. One of the two (documentation or code) should be fixed. I would likely prefer code, as it makes porting existing code easier.

AAA Docs

Can AAA even generate documentation?

Document incomplete?

I gave the recently release 1.0 a try. It seems that a lot of documents available in the prior release have gone missing. For example, I cannot find any information about the syntax extensions now. And #man cannot find anything useful. The reason seems to be that the html/api/*.idex files are missing.

Labeled version of batteries easily accessible

[open Batteries] opens a default batteries where you can ask for labeled arguments. How about a [open BatteriesLabel] which automatically opens all the labeled versions of functions.

What would this work like in the documentation?
Could this be made the default, with everything having labels?

IO uses its lock recursively

I have a small Batteries-using program, linked against the threaded Batteries, that primarily uses BatEnum and BatIO. It hangs when it's ready to shut down; strace reports that this is in a futex call. Replacing Mutex with RMutex in the synchronization setup code in batteries.ml fixes this problem, but I don't think this is the desirable solution if it can be avoided.

Update: this has been fixed to a working level in a7174ad; this ticket now serves to say that we should look at BatIO/BatInnerIO (and other lockable modules) to see whether the recursive locking can be eliminated.

Documentation build errors

The documentation build fails if the hdoc directory does not exist, and updating an mli file does not force enough of a doc rebuild to get the documentation change through to the HTML.

Bigarray.Array3.mapijk signature is incorrect

Bigarray.Array3.mapijk should take a mapping function with a signature:

(int -> int -> int -> 'a -> 'b)

Instead, it currently takes:

(int -> int -> 'a -> 'b)

The third index is missing. This is most likely a one line fix in the .ml file, and a line or few in the corresponding .mli.

Remove multiple-open examples in documentation

example in BatList: To take advantage of these overrides, you probably want to or . For instance, to open a version of List with exceptionless error management, you may write

open List, Exceptionless

Fix associativity of <|

By default, operators starting with < are left-associative, but <| should be right-associative. We'll probably need camlp4 to fix this, so it's low priority.

IO.read_line

What should happen on the last line of a file that doesn't end in \n?

omake install failed "ocamlfind: batteries.ml: No such file or directory"

I ran omake all and omake test, both seemed to work. But sudo omake install failed, see the output below:

$ uname -a
Darwin Arbus.local 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov 3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386
$ sudo omake install
*** omake: reading OMakefiles
*** omake: finished reading OMakefiles (0.11 sec)

  • build libs/estring
  • ocamlfind install estring META *.mli *.cmi *.cmo
    Installed /usr/local/lib/ocaml/site-lib/estring/pa_estring.cmo
    Installed /usr/local/lib/ocaml/site-lib/estring/pa_estring_top.cmo
    Installed /usr/local/lib/ocaml/site-lib/estring/pa_estring.cmi
    Installed /usr/local/lib/ocaml/site-lib/estring/pa_estring_top.cmi
    Installed /usr/local/lib/ocaml/site-lib/estring/pa_estring.mli
    Installed /usr/local/lib/ocaml/site-lib/estring/META
  • build .
  • ocamlfind install batteries build/META batteries.ml src/syntax/pa_comprehension/pa_comprehension.cmo src/syntax/pa_strings/pa_strings.cma src/batVect.cmi src/batInt.cmi src/batBase64.cmi src/batArg.cmi src/batRope.cmi src/batAvlTree.mli src/batFile.mli src/batGenlex.cmi src/batHashtbl.mli src/batPair.cmi src/batteries_print.mli src/batMutex.mli src/batBase64.mli src/batFloat.mli src/batPervasives.cmi src/batGc.mli src/batList.mli src/batOo.cmi src/batInnerWeaktbl.mli src/batGlobal.mli src/batUnit.mli src/batStd.cmi src/batBig_int.cmi src/batSeq.mli src/batStr.mli src/batUnix.mli src/batUnix.cmi src/batPrint.mli src/batStd.mli src/batBigarray.cmi src/batValue_printer.mli src/batInt32.mli src/batBigarray.mli src/batteries.a src/batParserCo.mli src/batStr.cmi src/batFormat.mli src/batPathGen.mli src/batCharParser.cmi src/batInt64.cmi src/batteries_config.mli src/batComplex.cmi src/batOo.mli src/batUChar.mli src/batInt.mli src/batSys.mli src/batInt32.cmi src/batSeq.cmi src/batValue_printer.cmi src/batUTF8.cmi src/batParserCo.cmi src/batStack.cmi src/batGenlex.mli src/batInnerIO.cmi src/batLazyList.cmi src/batteries_config.cmi src/batDigest.cmi src/batBool.mli src/batRandom.cmi src/batBuffer.cmi src/batMarshal.cmi src/batComplex.mli src/batConcurrent.mli src/batteries.cmxa src/batMultiPMap.cmi src/batOptParse.mli src/batReturn.cmi src/batPMap.cmi src/batOptParse.cmi src/batCharParser.mli src/batRope.mli src/batPrintexc.cmi src/batFormat.cmi src/batPathGen.cmi src/batString.cmi src/batHashtbl.cmi src/batPMap.mli src/batScanf.mli src/batDynArray.cmi src/batInt64.mli src/batSet.mli src/batteries.cma src/batISet.cmi src/batFile.cmi src/batVect.mli src/batMutex.cmi src/batLexing.cmi src/batGc.cmi src/batPrintf.mli src/batLogger.mli src/batRMutex.mli src/batList.cmi src/batChar.cmi src/batUChar.cmi src/batMarshal.mli src/batInterfaces.cmi src/batDigest.mli src/batDllist.cmi src/batBitSet.cmi src/batLexing.mli src/batConcurrent.cmi src/batBool.cmi src/batMonad.mli src/batIO.mli src/batRef.mli src/batCharEncodings.mli src/batISet.mli src/batNum.cmi src/batSys.cmi src/batPrint.cmi src/batPrintexc.mli src/batInnerWeaktbl.cmi src/batEnum.mli src/batPervasives.mli src/batOption.cmi src/batMap.cmi src/batMultiPMap.mli src/batteries_print.cmi src/batArray.mli src/batPSet.mli src/batIO.cmi src/batLogger.cmi src/batString.mli src/batStack.mli src/batChar.mli src/batStream.cmi src/batBig_int.mli src/batEnum.cmi src/batResult.cmi src/batNumber.mli src/batNativeint.cmi src/batInterfaces.mli src/batAvlTree.cmi src/batRefList.mli src/batCharEncodings.cmi src/batArray.cmi src/batBitSet.mli src/batPair.mli src/batArg.mli src/batIMap.cmi src/batteries_help.mli src/batOption.mli src/batMonad.cmi src/batStream.mli src/batteries.cmi src/batPrintf.cmi src/batSubstring.cmi src/batSubstring.mli src/batUCharParser.mli src/batRefList.cmi src/batNativeint.mli src/batBuffer.mli src/batQueue.cmi src/batDllist.mli src/batRMutex.cmi src/batQueue.mli src/batRandom.mli src/batInnerIO.mli src/batUTF8.mli src/batGlobal.cmi src/batNumber.cmi src/batRef.cmi src/batReturn.mli src/batDynArray.mli src/batResult.mli src/batIMap.mli src/batSet.cmi src/batScanf.cmi src/batFloat.cmi src/batMap.mli src/batNum.mli src/batPSet.cmi src/batteries_help.cmo src/batteries_help.cmi src/batUnit.cmi src/batUCharParser.cmi src/batLazyList.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batLazyList.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batUCharParser.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batUnit.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batteries_help.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batteries_help.cmo
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPSet.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batNum.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batMap.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batFloat.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batScanf.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batSet.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batIMap.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batResult.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batDynArray.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batReturn.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batRef.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batNumber.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batGlobal.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batUTF8.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInnerIO.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batRandom.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batQueue.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batRMutex.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batDllist.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batQueue.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBuffer.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batNativeint.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batRefList.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batUCharParser.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batSubstring.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batSubstring.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPrintf.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batteries.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batStream.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batMonad.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batOption.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batteries_help.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batIMap.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batArg.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPair.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBitSet.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batArray.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batCharEncodings.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batRefList.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batAvlTree.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInterfaces.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batNativeint.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batNumber.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batResult.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batEnum.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBig_int.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batStream.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batChar.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batStack.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batString.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batLogger.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batIO.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPSet.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batArray.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batteries_print.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batMultiPMap.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batMap.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batOption.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPervasives.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batEnum.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInnerWeaktbl.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPrintexc.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPrint.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batSys.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batNum.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batISet.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batCharEncodings.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batRef.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batIO.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batMonad.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBool.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batConcurrent.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batLexing.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBitSet.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batDllist.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batDigest.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInterfaces.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batMarshal.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batUChar.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batChar.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batList.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batRMutex.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batLogger.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPrintf.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batGc.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batLexing.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batMutex.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batVect.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batFile.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batISet.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batteries.cma
    Installed /usr/local/lib/ocaml/site-lib/batteries/batSet.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInt64.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batDynArray.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batScanf.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPMap.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batHashtbl.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batString.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPathGen.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batFormat.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPrintexc.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batRope.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batCharParser.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batOptParse.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPMap.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batReturn.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batOptParse.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batMultiPMap.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batteries.cmxa
    Installed /usr/local/lib/ocaml/site-lib/batteries/batConcurrent.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batComplex.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batMarshal.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBuffer.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batRandom.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBool.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batDigest.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batteries_config.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batLazyList.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInnerIO.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batGenlex.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batStack.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batParserCo.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batUTF8.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batValue_printer.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batSeq.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInt32.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batSys.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInt.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batUChar.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batOo.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batComplex.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batteries_config.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInt64.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batCharParser.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPathGen.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batFormat.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batStr.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batParserCo.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batteries.a
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBigarray.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInt32.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batValue_printer.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBigarray.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batStd.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPrint.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batUnix.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batUnix.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batStr.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batSeq.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBig_int.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batStd.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batUnit.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batGlobal.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInnerWeaktbl.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batOo.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batList.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batGc.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPervasives.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batFloat.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBase64.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batMutex.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batteries_print.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batPair.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batHashtbl.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batGenlex.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batFile.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batAvlTree.mli
    Installed /usr/local/lib/ocaml/site-lib/batteries/batRope.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batArg.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batBase64.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batInt.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/batVect.cmi
    Installed /usr/local/lib/ocaml/site-lib/batteries/pa_strings.cma
    Installed /usr/local/lib/ocaml/site-lib/batteries/pa_comprehension.cmo
    ocamlfind: batteries.ml: No such file or directory
    *** omake: 779/780 targets are up to date
    *** omake: failed (1.00 sec, 0/179 scans, 4/375 rules, 5/1019 digests)
    *** omake: targets were not rebuilt because of errors:
    <phony >

Link to ocaml docs for small modules

Many batFoo modules only provide a few new functions, so the batteries documentation doesn't cover the stdlib functions. Can we provide links to the reference manual for these modules?

Include .cmx files in install

It would be good to install the .cmx files as well as the .cmi and .cm{a,xa} files. If the .cmx files are present, then the native-code compiler can do cross-module inlining.

Toplevel aaa

What has to be done to use AAA in the toplevel?

Documentation artifacts from old Batteries and Extlib

The ocamldoc-generated documentation has a few artifacts that seem to be from older (pre-AAA) Batteries or Extlib that decrease clarity and, in some cases, usability.

  • References to Ext* module names; one example of this occurs in BatArray
  • References to other modules not always resolved (BatPervasives refers to modules such as String and Int32, but these references are not links anywhere)
  • References to old Batteries hierarchy (BatPervasives mentions Standard; this is not linked, nor explained

Also, the Batteries module is not included in the documentation; this may contribute to some of the delinking (although I am not sure).

Tree library used by Map/Set

Don't use the stdlib's set/map for everything, as it's a pain to extend because of having to break abstraction. Include implementations of various Tree types to be plugged into set/map through functors, with a good default.

Integrate Core

These were an old organization of the core modules into batteries framework.

  • Core.Squeue goes into Concurrency.Threads
  • Core.Thread_safe_queue goes into Concurrency.Threads
  • Core.Bag goes into Containers
  • Core.Bigbuffer goes into Containers
  • Core.Dequeue goes into Containers
  • Core.Fasthtbl goes into Containers
  • Core.Force_once goes into Containers
  • Core.Fqueue goes into Containers
  • Core.Hashqueue goes into Containers
  • Core.Hash_set goes into Containers ?
  • Core.Heap goes into Containers
  • Core.PSet goes into Containers
  • Core.Ref goes into Containers
  • Core.Tuple goes into Containers
  • Core.Bigstring goes into Text
  • Core.Char goes into Text
  • Core.Bool goes into Math
  • Core.Float goes into Math
  • Core.Floatable goes into Math
  • Core.Int goes into Math
  • Core.Int_intf goes into Math as ?
  • Core.Interval goes into Math
  • Core.Interval_set goes into Math
  • Core.Piecewise_linear goes into Math
  • Core.Time goes into Math.Time
  • Core.Month goes into Math.Time
  • Core.Exn goes into Meta
  • Core.Caml goes into Meta as Legacy
  • Core.Memo goes into Meta
  • Core.Monad goes into Meta?
  • Core.Size goes into Meta
  • Core.Unique_id goes into Meta
  • Core.Word_size goes into Meta
  • Core.Linux_ext goes into System as Linux
  • Core.Timer goes into System
  • Core.Crc goes into Util
  • Core.Common split between
    • Standard -- [result], [%], [/%], [forever], [ascending],
      [descending], [failwithf], [invalidargf]
    • Threads.Mutex -- [critical_section]
    • Filename -- [^/]
  • Core.Unix_ext merged with System.Unix
  • Core.Option merged with Containers.Option
  • Core.Core_* merged
  • Core.Equatable goes into Meta? into Data?
  • Core.Hashable goes into Meta? into Data?
  • Core.Doubly_linked?
  • Core.In_channel gets vampirized into System.IO
  • Core.Out_channelgets vampirized into System.IO
  • Core.Linebuf gets vampirized into System.IO
  • Core.OUnit_utils gets vampirized into Meta.Toolchain.OUnit when
    possible
  • Core.Sexpable gets vampirized into Meta.Sexplib
  • Core.Stringable gets vampirized into Meta.Sexplib
  • substitute [protectx] with [Standard.finally]

Import pa_do

Is this important once 3.12 comes with its local open capability? pa_do provides other features, but are they still compelling?

Doesn't install native code

The current HEAD fails to install native code in one of my GODI environments; reverting back to dac9f98 fixes it. Not sure what's up, and I haven't tested on other systems yet.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.