package core_kernel

  1. Overview
  2. Docs
Industrial strength alternative to OCaml's standard library

Install

dune-project
 Dependency

Authors

Maintainers

Sources

v0.14.2.tar.gz
sha256=66f5353964d35a994ec7fdc88fe60ae5d497ac89a8042786f3e37d9e2202ce4b
md5=ede2f6d22eaa8320f88bac67d41b5cff

Description

The Core suite of libraries is an industrial strength alternative to OCaml's standard library that was developed by Jane Street, the largest industrial user of OCaml.

Core_kernel is the system-independent part of Core.

Published: 17 Aug 2021

README

Portable standard library for OCaml

Core is an industrial-strength alternative to the OCaml standard library. It was developed by Jane Street, which is the largest industrial user of OCaml.

Core_kernel is the system-independent part of Core, Jane Street's industrial-strength alternative to the OCaml standard library. It is aimed for cases when the full Core is not available, such as in Javascript. It provides an overlay on the usual namespace, so the best way to use it is to start your file with:

open Core_kernel

Relationship to Core and Base

In sum:

  • Base: Minimal stdlib replacement. Portable and lightweight and intended to be highly stable.
  • Core_kernel: Extension of Base. More fully featured, with more code and dependencies, and APIs that evolve more quickly. Portable, and works on Javascript.
  • Core: Core_kernel extended with UNIX APIs.

While Core is an extension of Core_kernel, you can think of Core_kernel as an extension of Base. Many of Core_kernel's modules are extensions of modules in Base, where the Core_kernel version adds bin_io support or locks in an API with Stable. Some modules, like Core_kernel.Map, extend their Base equivalents to follow Core conventions for the use of comparators.


Please report bugs and feature requests on GitHub. For everything else you can contact us at ocaml-core@googlegroups.com.

You can find all of Jane Street's open-source libraries on GitHub.

Documentation can be found here.

Dependencies (23)

  1. dune >= "2.0.0"
  2. ppx_optcomp >= "v0.14.3" & < "v0.15"
  3. variantslib >= "v0.14" & < "v0.15"
  4. typerep >= "v0.14" & < "v0.15"
  5. time_now >= "v0.14" & < "v0.15"
  6. stdio >= "v0.14" & < "v0.15"
  7. splittable_random >= "v0.14" & < "v0.15"
  8. sexplib >= "v0.14" & < "v0.15"
  9. ppx_sexp_message >= "v0.14" & < "v0.15"
  10. ppx_sexp_conv >= "v0.14" & < "v0.15"
  11. ppx_jane >= "v0.14" & < "v0.15"
  12. ppx_inline_test >= "v0.14" & < "v0.15"
  13. ppx_hash >= "v0.14" & < "v0.15"
  14. ppx_base >= "v0.14" & < "v0.15"
  15. ppx_assert >= "v0.14" & < "v0.15"
  16. jst-config >= "v0.14" & < "v0.15"
  17. jane-street-headers >= "v0.14" & < "v0.15"
  18. fieldslib >= "v0.14" & < "v0.15"
  19. bin_prot >= "v0.14" & < "v0.15"
  20. base_quickcheck >= "v0.14" & < "v0.15"
  21. base_bigstring >= "v0.14" & < "v0.15"
  22. base >= "v0.14" & < "v0.15"
  23. ocaml >= "4.08"

Dev Dependencies

None

  1. accessor_async = "v0.14.1"
  2. accessor_core = "v0.14.1"
  3. alcotest-async < "1.7.0"
  4. async = "v0.14.0"
  5. async_durable = "v0.14.0"
  6. async_extra = "v0.14.0"
  7. async_kernel = "v0.14.0"
  8. async_rpc_kernel = "v0.14.0"
  9. async_unix = "v0.14.0"
  10. async_websocket = "v0.14.0"
  11. bap-abi
  12. bap-analyze
  13. bap-api
  14. bap-arm
  15. bap-beagle
  16. bap-beagle-strings
  17. bap-bil
  18. bap-build
  19. bap-bundle
  20. bap-byteweight
  21. bap-byteweight-frontend
  22. bap-c
  23. bap-cache
  24. bap-callgraph-collator
  25. bap-core-theory
  26. bap-demangle
  27. bap-dependencies
  28. bap-disassemble
  29. bap-dump-symbols
  30. bap-dwarf
  31. bap-elf
  32. bap-frontend
  33. bap-future
  34. bap-ghidra
  35. bap-glibc-runtime
  36. bap-ida
  37. bap-ida-plugin
  38. bap-knowledge
  39. bap-llvm
  40. bap-mc
  41. bap-microx
  42. bap-mips
  43. bap-objdump
  44. bap-optimization
  45. bap-patterns
  46. bap-phoenix
  47. bap-plugins
  48. bap-powerpc
  49. bap-primus
  50. bap-primus-lisp
  51. bap-primus-loader
  52. bap-primus-powerpc
  53. bap-primus-print
  54. bap-primus-propagate-taint
  55. bap-primus-random
  56. bap-primus-symbolic-executor
  57. bap-primus-systems
  58. bap-print
  59. bap-radare2
  60. bap-raw
  61. bap-relocatable
  62. bap-riscv
  63. bap-specification
  64. bap-std
  65. bap-strings
  66. bap-stub-resolver
  67. bap-symbol-reader
  68. bap-systemz
  69. bap-taint
  70. bap-term-mapper
  71. bap-thumb
  72. bap-trace
  73. bap-traces
  74. bap-x86
  75. bare
  76. bignum = "v0.14.0"
  77. bio_io != "0.2.1" & < "0.5.1"
  78. biocaml < "0.11.2"
  79. bonsai = "v0.14.0"
  80. capnp < "3.3.0"
  81. caqti-async < "1.9.0"
  82. cfstream
  83. clp_operations
  84. cohttp-curl-async >= "6.1.0"
  85. comby-kernel
  86. comby-semantic
  87. core >= "v0.14.0" & < "v0.15.0"
  88. core_bench = "v0.14.0"
  89. core_extended = "v0.14.0"
  90. core_profiler = "v0.14.0"
  91. dbf = "0.1.1"
  92. ecaml = "v0.14.0"
  93. email_message = "v0.14.0"
  94. expect_test_helpers_core < "v0.15.0"
  95. flow_parser < "0.229.1"
  96. fuzzy_compare < "2.0.0"
  97. graphlib
  98. incr_dom = "v0.14.0"
  99. incr_map = "v0.14.0"
  100. incr_select = "v0.14.0"
  101. incremental = "v0.14.0"
  102. jsonxt
  103. libsvm >= "0.10.0"
  104. mlt_parser >= "v0.14.0" & < "v0.15.0"
  105. monads
  106. ocaml_plugin = "v0.14.0"
  107. ogre
  108. patdiff = "v0.14.0"
  109. patience_diff = "v0.14.0"
  110. pgx_value_core
  111. plotkicadsch < "0.8.0"
  112. polars
  113. postgres_async = "v0.14.0"
  114. prc
  115. protocol_version_header = "v0.14.0"
  116. pyml_bindgen < "0.4.1"
  117. randoml
  118. re2 = "v0.14.0"
  119. reddit_api_kernel
  120. reed-solomon-erasure
  121. regular
  122. resource_cache = "v0.14.0"
  123. rpc_parallel = "v0.14.0"
  124. SZXX < "3.0.0"
  125. sexp = "v0.14.0"
  126. sexp_diff_kernel >= "v0.14.0"
  127. shell = "v0.14.0"
  128. splay_tree = "v0.14.0"
  129. tdigest < "2.0.0"
  130. text-tags
  131. textutils = "v0.14.0"
  132. textutils_kernel = "v0.14.0"
  133. tidy
  134. timezone = "v0.14.0"
  135. toplevel_backend = "v0.14.0"
  136. toplevel_expect_test >= "v0.14.0" & < "v0.15.0"
  137. travesty < "0.6.2"
  138. vcaml = "v0.14.0"
  139. virtual_dom = "v0.14.0"
  140. zstandard = "v0.14.0"

Conflicts

None