package spotlib
Install
dune-project
Dependency
Authors
Maintainers
Sources
md5=7fff71bfc23ad664bf0b53fd19c50300
sha512=a3f5e6088ee31d0c69043054470b4b08b9e26b74b55affdfdf1cb62b8fe09f960568491cc5095ed6cf95fd83cde3d7485c1a3966c5c8342f7a9861525946ffc7
doc/README.html
Spotlib
Yet another extension of OCaml standard library.
Module name convension
X.Open: Recommended to open it whenXis usedX.Pervasives: They are included inSpotlib.Spot. OpeningSpotlib.Spotmake them available.
Function name convension
Functions of stdlib are kept as they are. Only the exception is the conversions of non tail recursions to tail recursions.
Tail recursion
Non tail recursive functions in stdlib may be replaced by tail recursive equivalents. In that case, the original functions xxx in stdlib should be accessible by xxx_ntr.
Exception
Some functions xxx do not raise exceptions even for strange inputs. xxx_exn may throw exceptions for the strange inputs.
For example, List.take 10 [] = [] following the behaviour of Haskell's take. take_exn throws Invalid_argument "List.take" instead.
Option
Many stdlib functions xxx throw exceptions Not_found when searching fails. xxx_opt returns None instead.
Default
Many stdlib functions may raise exceptions for some inputs. xxx_def never throws exceptions for such inputs. Ex. String.sub and String.sub_default: String.sub "hello" 3 5 throws an exception, but String.sub_default "hello" 3 5 = "lo".
Function type convension
- No labels for basic functions. Proposes to use flip, flip2... instead.