package core

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

Install

Dune Dependency

Authors

Maintainers

Sources

core-v0.16.0.tar.gz
sha256=47c80523fc50da4cc1a95d6fde7bcdb99c74a51a7f88823f8c6f089ff1c95c87

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.

This is the system-independent part of Core. Unix-specific parts were moved to [core-unix].

Published: 02 Jun 2023

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 works with Javascript. It provides an overlay on the usual namespace, so the best way to use it is to start your file with:

open! Core

Relationship to Core and Base

In sum:

  • Base: Minimal stdlib replacement. Portable and lightweight and intended to be highly stable.

  • Core: Extension of Base. More fully featured, with more code and dependencies, and APIs that evolve more quickly. Portable, and works on Javascript.

Many of Core's modules are extensions of modules in Base, where the Core version adds bin_io support or locks in an API with Stable. Some modules, like Core.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 opensource-contacts@janestreet.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. variantslib >= "v0.16" & < "v0.17"
  3. typerep >= "v0.16" & < "v0.17"
  4. time_now >= "v0.16" & < "v0.17"
  5. stdio >= "v0.16" & < "v0.17"
  6. splittable_random >= "v0.16" & < "v0.17"
  7. sexplib >= "v0.16" & < "v0.17"
  8. ppx_sexp_message >= "v0.16" & < "v0.17"
  9. ppx_sexp_conv >= "v0.16" & < "v0.17"
  10. ppx_optcomp >= "v0.16" & < "v0.17"
  11. ppx_jane >= "v0.16" & < "v0.17"
  12. ppx_inline_test >= "v0.16" & < "v0.17"
  13. ppx_hash >= "v0.16" & < "v0.17"
  14. ppx_base >= "v0.16" & < "v0.17"
  15. ppx_assert >= "v0.16" & < "v0.17"
  16. jst-config >= "v0.16" & < "v0.17"
  17. jane-street-headers >= "v0.16" & < "v0.17"
  18. fieldslib >= "v0.16" & < "v0.17"
  19. bin_prot >= "v0.16" & < "v0.17"
  20. base_quickcheck >= "v0.16" & < "v0.17"
  21. base_bigstring >= "v0.16" & < "v0.17"
  22. base >= "v0.16" & < "v0.17"
  23. ocaml >= "4.14.0" & < "5.1~"

Dev Dependencies

None

  1. accessor_async = "v0.16.0"
  2. accessor_core = "v0.16.0"
  3. alcotest-async
  4. anthill
  5. arrayjit < "0.4.1"
  6. async = "v0.16.0"
  7. async-uri >= "0.4.0"
  8. async_durable = "v0.16.0"
  9. async_extra = "v0.16.0"
  10. async_find = "v0.16.0"
  11. async_inotify = "v0.16.0"
  12. async_interactive = "v0.16.0"
  13. async_kernel = "v0.16.0"
  14. async_rpc_kernel = "v0.16.0"
  15. async_sendfile = "v0.16.0"
  16. async_shell = "v0.16.0"
  17. async_smtp = "v0.16.0"
  18. async_ssl >= "v0.16.0" & < "v0.17.0"
  19. async_unix = "v0.16.0"
  20. aws-s3-async >= "4.6.0"
  21. babel < "v0.17.0"
  22. base_trie < "v0.17.0"
  23. bastet_async
  24. bigdecimal = "v0.16.0"
  25. bignum = "v0.16.0"
  26. bio_io >= "0.1.2" & < "0.5.1"
  27. biocaml >= "0.11.2"
  28. biotk >= "0.3"
  29. bonsai = "v0.16.0"
  30. boulangerie
  31. camlix
  32. capnp < "3.2.1"
  33. caqti-async >= "1.9.0" & < "2.1.1"
  34. cohttp-async = "2.5.2-1" | >= "5.3.0"
  35. cohttp-bench
  36. cohttp-curl-async
  37. cohttp_async_websocket = "v0.16.0"
  38. colibrics
  39. combinat >= "3.0"
  40. comby
  41. command_rpc = "v0.16.0"
  42. conduit-async
  43. content_security_policy < "v0.17.0"
  44. core_bench = "v0.16.0"
  45. core_extended = "v0.16.0"
  46. core_kernel = "v0.16.0"
  47. core_profiler = "v0.16.0"
  48. core_unix = "v0.16.0"
  49. cstruct-async
  50. csvfields = "v0.16.0"
  51. cuid
  52. delimited_parsing = "v0.16.0"
  53. diffable
  54. disml
  55. ecaml = "v0.16.0"
  56. email_message = "v0.16.0"
  57. embedded_ocaml_templates >= "0.3.1" & < "0.6"
  58. env_config = "v0.16.0"
  59. expect_test_helpers_async = "v0.16.0"
  60. expect_test_helpers_core = "v0.16.0"
  61. faraday-async >= "0.8.2"
  62. ff-bench >= "0.6.2"
  63. file_path = "v0.16.0"
  64. fuzzy_compare >= "2.0.1"
  65. fuzzy_match = "v0.16.0"
  66. gemini < "0.3.0"
  67. gluten-async >= "0.3.0"
  68. gopcaml-mode
  69. gopcaml-mode-merlin
  70. gpiod
  71. gpr >= "1.5.1"
  72. grace
  73. gradescope_submit
  74. hack_parallel < "1.0.0"
  75. hardcaml_c = "v0.16.0"
  76. hardcaml_of_verilog = "v0.16.0"
  77. hardcaml_verilator = "v0.16.0"
  78. hardcaml_xilinx_components = "v0.16.0"
  79. hardcaml_xilinx_reports < "v0.17.0"
  80. hex_encode = "v0.16.0"
  81. hg_lib = "v0.16.0"
  82. hl_yaml
  83. http < "6.0.0~alpha2"
  84. httpaf_caged >= "1.0.1"
  85. incr_dom = "v0.16.0"
  86. incr_map = "v0.16.0"
  87. incr_select = "v0.16.0"
  88. incremental = "v0.16.1"
  89. indentation_buffer < "v0.17.0"
  90. janestreet_cpuid < "v0.17.0"
  91. janestreet_lru_cache < "v0.17.0"
  92. js_of_ocaml-webgpu
  93. krb >= "v0.16.0"
  94. lambda_streams_async
  95. libsvm < "0.9.4"
  96. line-up-words = "v0.16.0"
  97. liquid_interpreter
  98. liquid_ml
  99. liquid_parser
  100. liquid_std
  101. liquid_syntax
  102. little_logger >= "0.2.0"
  103. logs-async-reporter >= "1.3"
  104. m_tree
  105. man_in_the_middle_debugger < "v0.17.0"
  106. mlt_parser = "v0.16.0"
  107. netsnmp = "v0.16.0"
  108. neural_nets_lib < "0.4.1"
  109. nocoiner
  110. numalib
  111. ocaml-embed-file = "v0.16.0"
  112. ocamlapi_ppx
  113. ocamlmig
  114. of_json < "v0.17.0"
  115. openapi
  116. openapi_router
  117. oraft >= "0.3.0"
  118. orewa
  119. p4pp >= "0.1.12"
  120. packstream
  121. pam = "v0.16.0"
  122. pari
  123. pari-bindings
  124. patdiff >= "v0.16.0" & < "v0.17.0"
  125. patience_diff = "v0.16.0"
  126. phylogenetics >= "0.3.0"
  127. pixel_pusher >= "1.1"
  128. plateau
  129. polars
  130. polars_async
  131. polling_state_rpc < "v0.17.0"
  132. postgres_async = "v0.16.0"
  133. ppx_css = "v0.16.0"
  134. ppx_demo < "v0.17.0"
  135. ppx_deriving_json_schema
  136. ppx_mica
  137. ppx_rapper < "1.0.1"
  138. ppx_typed_fields = "v0.16.0"
  139. protocol_version_header = "v0.16.0"
  140. pyml_bindgen = "0.2.0"
  141. pythonlib >= "v0.16.0"
  142. re2 = "v0.16.0"
  143. red-black-tree
  144. redis-async = "v0.16.0"
  145. resource_cache = "v0.16.0"
  146. rpc_parallel = "v0.16.0"
  147. SZXX >= "3.0.1" & != "3.1.0" & < "4.1.0"
  148. safemoney < "0.2.0"
  149. sarif < "0.2.1"
  150. satyrographos >= "0.0.2.7" & != "0.0.2.11"
  151. semantic_version < "v0.17.0"
  152. sentry >= "v0.11.0"
  153. sequencer_table = "v0.16.0"
  154. sexp = "v0.16.0"
  155. sexp_diff = "v0.16.0"
  156. sexp_grammar = "v0.16.0"
  157. sexp_string_quickcheck = "v0.16.0"
  158. shell = "v0.16.0"
  159. shuttle >= "0.4.0"
  160. shuttle_http < "0.8.1" | >= "0.10.0" & < "0.12.0"
  161. splay_tree = "v0.16.0"
  162. stored_reversed < "v0.17.0"
  163. streamable < "v0.17.0"
  164. tdigest >= "2.1.2" & < "2.2.0"
  165. textutils = "v0.16.0"
  166. textutils_kernel = "v0.16.0"
  167. timezone = "v0.16.0"
  168. tls-async >= "0.17.0"
  169. toplevel_backend = "v0.16.0"
  170. toplevel_expect_test = "v0.16.0"
  171. torch = "v0.16.0"
  172. tracing = "v0.16.0"
  173. username_kernel = "v0.16.0"
  174. vcaml >= "v0.16.0"
  175. virtual_dom = "v0.16.0"
  176. websocket-async >= "2.16"
  177. yara
  178. yojson-bench
  179. zstandard = "v0.16.0"

Conflicts

None

OCaml

Innovation. Community. Security.