Promises and event-driven I/O

Description

A promise is a value that may become determined in the future.

Lwt provides typed, composable promises. Promises that are resolved by I/O are resolved by Lwt in parallel.

Meanwhile, OCaml code, including code creating and waiting on promises, runs in a single thread by default. This reduces the need for locks or other synchronization primitives. Code can be run in parallel on an opt-in basis.

Published: 29 Jun 2022

Dependencies (6)

  1. ocamlfind dev & >= "1.7.3-1"
  2. ocplib-endian
  3. ocaml >= "4.08"
  4. dune-configurator
  5. dune >= "1.8.0"
  6. cppo build & >= "1.1.0"

Reverse Dependencies (550)

  1. 0install >= "2.15.1"
  2. aches-lwt
  3. albatross
  4. alcotest-lwt
  5. alcotest-mirage
  6. amqp-client >= "0.9.0" & < "1.0.2" | >= "1.1.0"
  7. amqp-client-lwt >= "2.0.1"
  8. angstrom-lwt-unix >= "0.11.0"
  9. anthill
  10. anycache-lwt
  11. arakoon < "1.8.6" | >= "1.8.8"
  12. archi-lwt
  13. arp >= "2.3.1"
  14. arp-mirage >= "2.2.1"
  15. awa-lwt
  16. awa-mirage
  17. aws-lwt
  18. aws-s3-lwt
  19. azure-cosmos-db
  20. baardskeerder
  21. balancer
  22. bap < "1.0.0"
  23. bap-server < "0.2.0"
  24. bastet_lwt
  25. bimage-lwt
  26. biocaml = "0.4.0"
  27. bistro >= "0.4.0"
  28. brozip
  29. builder
  30. builder-web
  31. bun >= "0.3.3"
  32. c3
  33. calculon
  34. caldav
  35. camltc = "0.9.5" | >= "0.9.7.0"
  36. canary
  37. capnp-rpc-lwt
  38. capnp-rpc-unix >= "0.9.0"
  39. caqti-lwt >= "0.11.0"
  40. carton
  41. carton-git
  42. carton-lwt
  43. cf-lwt
  44. chamelon
  45. chamelon-unix
  46. chamo >= "3.0"
  47. channel
  48. charrua-client >= "1.3.0"
  49. charrua-client-lwt
  50. charrua-client-mirage
  51. charrua-core < "0.3"
  52. charrua-unix >= "0.3" & != "0.10"
  53. clz
  54. cmdtui-lambda-term
  55. coclobas
  56. cohttp-curl-lwt
  57. cohttp-lwt
  58. cohttp-lwt-jsoo
  59. cohttp-lwt-unix >= "1.1.1"
  60. cohttp-lwt-unix-nossl
  61. cohttp-lwt-unix-ssl
  62. cohttp-mirage
  63. cohttp-server-lwt-unix
  64. comby
  65. comby-semantic
  66. conan-lwt
  67. conduit-lwt
  68. conduit-lwt-unix
  69. cowabloga >= "0.2.2"
  70. crunch >= "2.0.0"
  71. cstruct-lwt
  72. csv-lwt
  73. csvprovider
  74. ctypes >= "0.15.0"
  75. current
  76. current-albatross-deployer
  77. current_docker
  78. current_examples
  79. current_git
  80. current_github
  81. current_gitlab
  82. current_ocluster
  83. current_rpc >= "0.4"
  84. current_slack
  85. current_web
  86. dap
  87. data-encoding < "0.1.1"
  88. datakit
  89. datakit-bridge-github
  90. datakit-bridge-local-git
  91. datakit-ci
  92. datakit-client = "0.11.0"
  93. datakit-github
  94. devkit >= "1.2"
  95. dht < "0.2.0"
  96. distributed-lwt
  97. dkim-mirage
  98. dlm
  99. dns >= "0.19.1" & < "0.20.1"
  100. dns-certify
  101. dns-cli >= "4.6.3"
  102. dns-client < "7.0.0"
  103. dns-client-lwt
  104. dns-client-mirage
  105. dns-forward >= "0.9.0"
  106. dns-forward-lwt-unix
  107. dns-lwt
  108. dns-mirage
  109. dns-resolver
  110. dns-server
  111. dns-stub
  112. dnssd
  113. docker_hub
  114. docteur >= "0.0.2"
  115. docteur-solo5
  116. docteur-unix >= "0.0.5"
  117. doi2bib >= "0.5.1"
  118. dream
  119. dream-httpaf
  120. dream-pure
  121. dream-serve
  122. dropbox
  123. dune-rpc-lwt
  124. dune_watch
  125. earlybird
  126. elasticsearch-cli >= "0.4"
  127. equinoxe
  128. eris-lwt
  129. ethernet
  130. ez_api >= "1.2.0"
  131. ezcurl-lwt
  132. ezirmin
  133. ezjs_min < "0.2"
  134. ezjsonm >= "0.4.2" & < "0.5.0"
  135. ezjsonm-lwt
  136. ezresto
  137. ezresto-directory >= "0.5"
  138. faraday-lwt
  139. faraday-lwt-unix >= "0.6.0"
  140. fat-filesystem >= "0.12.0"
  141. flowtype >= "0.72.0"
  142. frenetic < "2.0.0"
  143. fsevents-lwt
  144. fswatch_lwt
  145. gamepad
  146. gdb
  147. gdbprofiler >= "0.3"
  148. git != "1.4.3" & != "1.7.2"
  149. git-cohttp
  150. git-cohttp-mirage
  151. git-cohttp-unix
  152. git-mirage >= "3.0.0"
  153. git-paf
  154. git-unix = "1.11.1" | >= "3.0.0"
  155. github
  156. github-hooks < "0.2.0" | >= "0.4.0"
  157. github-unix >= "4.4.0"
  158. gitlab-unix
  159. gitlab_pipeline_notifier
  160. gluten-lwt
  161. gluten-lwt-unix < "0.4.0"
  162. gluten-mirage < "0.4.0"
  163. graphql-lwt
  164. gremlin
  165. grpc-lwt
  166. guardian
  167. gufo
  168. h2-lwt
  169. h2-lwt-unix < "0.10.0"
  170. h2-mirage
  171. happy-eyeballs-lwt
  172. happy-eyeballs-mirage
  173. hardcaml < "1.1.0"
  174. hardcaml-examples >= "0.3.0"
  175. hardcaml-framework
  176. hiredis != "0.4"
  177. hockmd
  178. horned_worm < "0.3.1"
  179. http-lwt-client
  180. http-mirage-client
  181. http-multipart-formdata >= "2.0.0" & < "3.0.0"
  182. http2https
  183. httpaf-lwt-unix
  184. hvsock >= "1.0.2"
  185. i3ipc >= "0.1.4"
  186. imaplet-lwt
  187. influxdb-lwt
  188. inotify >= "2.4"
  189. inquire < "0.3.0"
  190. interface-prime-lwt
  191. iocaml < "0.4.6"
  192. iocaml-kernel >= "0.4.3" & < "0.4.6"
  193. iocamljs-kernel
  194. ip2location
  195. ipv6-multicast-lwt
  196. irc-client-lwt
  197. irc-client-lwt-ssl
  198. irc-client-tls
  199. irmin < "0.9.6" | = "0.9.10" | >= "0.11.0"
  200. irmin-bench
  201. irmin-chunk
  202. irmin-cli
  203. irmin-containers
  204. irmin-fs >= "2.3.0"
  205. irmin-git >= "2.3.0"
  206. irmin-graphql >= "2.3.0"
  207. irmin-http >= "2.3.0"
  208. irmin-indexeddb
  209. irmin-layers
  210. irmin-mem >= "2.3.0"
  211. irmin-mirage-git >= "2.3.0"
  212. irmin-mirage-graphql >= "2.3.0"
  213. irmin-pack
  214. irmin-test >= "2.3.0"
  215. irmin-unix >= "2.3.0"
  216. irmin-watcher >= "0.3.0"
  217. jerboa
  218. jitsu
  219. joolog
  220. jose < "0.9.0"
  221. js_of_ocaml < "2.5"
  222. js_of_ocaml-lwt >= "3.5.0"
  223. jsoo_broadcastchannel
  224. jsoo_router
  225. jsoo_storage
  226. jupyter >= "2.3.0"
  227. jupyter-kernel >= "0.4"
  228. kafka >= "0.3" & < "0.5"
  229. kafka_lwt
  230. kappa-library
  231. ke >= "0.5"
  232. ketrew >= "3.2.0"
  233. kinetic-client < "0.0.3" | >= "0.0.9"
  234. kubecaml
  235. lablqml < "0.6"
  236. lambda-runtime
  237. lambda-term >= "1.13"
  238. lambda_streams_lwt
  239. launchd
  240. learn-ocaml >= "0.13.0"
  241. learn-ocaml-client >= "0.13.0"
  242. letsencrypt
  243. letsencrypt-app
  244. letsencrypt-dns
  245. letters
  246. libres3
  247. links != "0.9"
  248. linol-lwt
  249. lwt-binio < "0.2.0"
  250. lwt-canceler
  251. lwt-dllist
  252. lwt-exit
  253. lwt-parallel >= "1.0.0"
  254. lwt-pipe
  255. lwt-pipeline
  256. lwt-watcher
  257. lwt-zmq < "1.0.0"
  258. lwt_camlp4
  259. lwt_domain
  260. lwt_eio
  261. lwt_glib >= "1.0.1"
  262. lwt_log >= "1.1.0"
  263. lwt_ppx
  264. lwt_ppx_let
  265. lwt_react >= "1.0.1"
  266. lwt_ssl >= "1.0.1"
  267. mariadb < "0.5.1"
  268. markup = "0.7.6"
  269. markup-lwt
  270. mbr-format >= "1.0.0"
  271. mdx
  272. mechaml
  273. mehari-lwt-unix
  274. mehari-mirage
  275. memtrace-mirage
  276. metrics-influx
  277. metrics-lwt
  278. metrics-mirage
  279. metrics-unix
  280. mimic
  281. mindstorm-lwt
  282. mirage >= "0.4.1" & != "0.6.1" & < "0.8.0" | >= "0.10.0" & < "2.7.0"
  283. mirage-block < "1.0.0" | >= "2.0.0"
  284. mirage-block-ccm
  285. mirage-block-combinators
  286. mirage-block-lwt
  287. mirage-block-partition
  288. mirage-block-ramdisk
  289. mirage-block-solo5
  290. mirage-block-unix < "2.3.0" | = "2.8.2" | >= "2.13.0"
  291. mirage-block-xen
  292. mirage-bootvar-solo5 >= "0.2.0"
  293. mirage-bootvar-unix
  294. mirage-bootvar-xen >= "0.4.0"
  295. mirage-channel >= "4.0.0"
  296. mirage-channel-lwt
  297. mirage-clock-freestanding < "3.0.0"
  298. mirage-clock-lwt
  299. mirage-clock-unix >= "1.3.0" & < "3.0.0"
  300. mirage-console >= "3.0.0"
  301. mirage-console-lwt
  302. mirage-console-solo5 >= "0.2.0"
  303. mirage-console-unix >= "2.2.1"
  304. mirage-console-xen >= "5.0.0"
  305. mirage-console-xen-backend
  306. mirage-console-xen-cli
  307. mirage-crypto-entropy
  308. mirage-crypto-rng >= "0.7.0" & < "0.11.0"
  309. mirage-crypto-rng-lwt
  310. mirage-crypto-rng-mirage >= "0.8.8"
  311. mirage-device >= "2.0.0"
  312. mirage-dns < "3.0.0"
  313. mirage-entropy
  314. mirage-flow >= "1.0.3" & < "1.2.0" | >= "2.0.0"
  315. mirage-flow-combinators
  316. mirage-flow-lwt < "1.3.0" | >= "1.5.0"
  317. mirage-flow-rawlink
  318. mirage-flow-unix >= "1.3.0"
  319. mirage-fs >= "3.0.0"
  320. mirage-fs-lwt
  321. mirage-fs-unix < "1.1.1" | >= "1.3.0"
  322. mirage-http
  323. mirage-http-unix
  324. mirage-http-xen
  325. mirage-kv >= "3.0.0"
  326. mirage-kv-lwt
  327. mirage-kv-unix
  328. mirage-logs != "0.3.0"
  329. mirage-nat < "3.0.0"
  330. mirage-net >= "3.0.1"
  331. mirage-net-fd
  332. mirage-net-lwt
  333. mirage-net-macosx
  334. mirage-net-solo5
  335. mirage-net-unix >= "2.2.0"
  336. mirage-net-xen
  337. mirage-os-shim >= "3.0.0"
  338. mirage-profile
  339. mirage-protocols >= "4.0.0" & < "8.0.0"
  340. mirage-protocols-lwt
  341. mirage-qubes < "0.2" | >= "0.4"
  342. mirage-qubes-ipv4
  343. mirage-random-stdlib >= "0.1.0"
  344. mirage-runtime >= "3.7.0"
  345. mirage-solo5
  346. mirage-stack >= "2.0.0" & < "4.0.0"
  347. mirage-stack-lwt
  348. mirage-time >= "2.0.0"
  349. mirage-time-lwt
  350. mirage-time-unix
  351. mirage-types-lwt < "3.7.1"
  352. mirage-unix >= "3.0.0"
  353. mirage-vnetif
  354. mirage-vnetif-stack
  355. mirage-www >= "1.1.0"
  356. mirage-xen
  357. mirror
  358. monorobot
  359. mqtt >= "0.0.2"
  360. mrmime >= "0.5.0"
  361. multipart-form-data >= "0.2.0"
  362. multipart_form >= "0.2.0" & < "0.4.0"
  363. multipart_form-lwt
  364. mwt
  365. naboris
  366. nanomsg
  367. nbd = "2.1.1" | >= "4.0.3"
  368. nbd-tool
  369. nbd-unix
  370. netchannel
  371. nocrypto >= "0.5.4"
  372. nottui-lwt
  373. nproc
  374. nsq >= "0.4.0"
  375. obrowser
  376. obuilder
  377. obus >= "1.2.1"
  378. ocaml-variants >= "4.00.1+mirage-unix" & < "4.00.1+open-types"
  379. ocluster
  380. ocluster-api
  381. ocluster-worker
  382. ocplib-concur
  383. ocplib-resto
  384. ocsigenserver >= "2.10"
  385. ocsipersist
  386. ocsipersist-dbm
  387. ocsipersist-lib
  388. ocsipersist-pgsql
  389. ocsipersist-sqlite
  390. octez-protocol-compiler
  391. octez-proxy-server
  392. odoc >= "2.0.0" & < "2.1.0"
  393. ojquery
  394. ojs-base
  395. ojs_base
  396. omigrate
  397. oneffs
  398. opam-sync-github-prs
  399. openflow < "0.2.0"
  400. opentelemetry-client-cohttp-lwt
  401. opentelemetry-cohttp-lwt >= "0.4"
  402. opentelemetry-lwt
  403. opium >= "0.11.0" & != "0.16.0"
  404. opium-graphql
  405. opium_kernel
  406. opomodoro
  407. order-i3-xfce
  408. ordma >= "0.0.3"
  409. oskel >= "0.3.0"
  410. ounit-lwt < "2.2.0"
  411. ounit2-lwt
  412. owork
  413. ox < "1.1.0"
  414. paf
  415. paf-cohttp
  416. pcap-format >= "0.3.3" & < "0.5.0"
  417. petrol
  418. pgx_lwt
  419. pgx_lwt_mirage
  420. pgx_lwt_unix < "2.0"
  421. piaf
  422. plebeia >= "2.0.0"
  423. plist-xml-lwt
  424. plotkicadsch >= "0.4.0"
  425. ppx_defer >= "0.4.0"
  426. ppx_deriving_rpc
  427. ppx_json_types
  428. ppx_netblob
  429. ppx_rapper_lwt
  430. ppx_sqlexpr
  431. proc-smaps
  432. prof_spacetime
  433. prometheus
  434. prometheus-app
  435. protocol-9p >= "0.10.0"
  436. protocol-9p-unix
  437. qcow >= "0.8.1"
  438. qcow-format < "0.3"
  439. qcow-tool
  440. qfs = "0.5" | >= "0.7"
  441. quests
  442. rawlink >= "1.0" & < "2.1"
  443. rawlink-lwt
  444. rdf_lwt
  445. redis-lwt
  446. reparse-lwt
  447. reparse-lwt-unix
  448. resource-pooling >= "0.3.2"
  449. resp
  450. resp-mirage >= "0.10.0"
  451. resp-unix >= "0.10.0"
  452. resto
  453. resto-cohttp-client >= "0.4"
  454. resto-cohttp-self-serving-client
  455. resto-cohttp-server >= "0.4" & < "0.6" | >= "0.9"
  456. resto-directory >= "0.4"
  457. riak
  458. ringo-lwt
  459. river
  460. rock
  461. rpc >= "1.5.1" & < "7.1.0"
  462. rpclib-js
  463. rpclib-lwt
  464. SZXX
  465. sanddb
  466. scgi
  467. sendmail-lwt
  468. serial
  469. session-cohttp-lwt
  470. session-cookie-lwt
  471. session-postgresql-lwt >= "0.4.1"
  472. sessions
  473. shared-block-ring < "2.3.0" | >= "3.0.0"
  474. shared-memory-ring >= "1.2.0" & < "2.0.0"
  475. shared-memory-ring-lwt
  476. sihl < "0.2.0"
  477. slacko
  478. socket-daemon < "0.3.0"
  479. spin < "0.8.0"
  480. spoke
  481. spotify-web-api < "0.2.1"
  482. sqlexpr = "0.7.1" | >= "0.9.0"
  483. statsd-client
  484. stog >= "0.16.0"
  485. syguslib-utils
  486. syndic >= "1.4" & < "1.6.0"
  487. tar-format >= "0.4.1"
  488. tar-mirage
  489. tar-unix
  490. tcpip >= "3.1.1" & < "3.4.1" | >= "4.1.0"
  491. teash
  492. telegraml
  493. terminus
  494. tezos-base >= "13.0"
  495. tezos-clic >= "13.0"
  496. tezos-crypto >= "13.0"
  497. tezos-crypto-dal
  498. tezos-error-monad >= "8.0" & < "9.0" | >= "13.0"
  499. tezos-lwt-result-stdlib >= "9.0"
  500. tezos-p2p >= "11.0" & < "13.0"
  501. tezos-protocol-compiler >= "13.0"
  502. tezos-protocol-environment >= "13.0"
  503. tezos-proxy-server
  504. tezos-stdlib
  505. tezos-stdlib-unix >= "8.0" & < "9.0" | >= "13.0"
  506. tezos-test-helpers >= "12.0"
  507. tezos-wasmer
  508. tezos-webassembly-interpreter-extra
  509. tezt
  510. tftp
  511. themoviedb
  512. tidy_email
  513. tls = "0.10.1" | >= "0.10.6" & < "0.16.0"
  514. tls-lwt
  515. tls-mirage
  516. transmission-rpc
  517. tube >= "4.3.0"
  518. tuntap >= "1.0.0" & < "1.7.0" | >= "2.0.0"
  519. typerex-lldb
  520. u2f
  521. uring
  522. uspf
  523. uspf-lwt
  524. utop >= "1.4.0"
  525. uwt >= "0.3.0"
  526. vchan >= "0.9.7" & < "2.0.0" | >= "2.0.3"
  527. vchan-unix
  528. vchan-xen
  529. vercel
  530. vhd-format >= "0.7.0" & < "0.8.0"
  531. vhd-format-lwt >= "0.12.0"
  532. vhd-tool < "0.12.0"
  533. vmnet >= "1.3.2"
  534. vpnkit >= "0.2.0"
  535. vue-jsoo < "0.3"
  536. wayland
  537. webauthn
  538. websocket < "2.3"
  539. xe-unikernel-upload
  540. xen-api-client < "0.9.14"
  541. xen-block-driver
  542. xen-evtchn < "1.0.6" | >= "2.0.0"
  543. xen-evtchn-unix
  544. xen-gnt >= "2.2.3"
  545. xenctrl < "0.9.29" | >= "0.9.32"
  546. xenstore >= "1.3.0"
  547. xenstore_transport >= "1.0.0"
  548. xentropyd
  549. yurt < "0.3"
  550. zmq-lwt

Conflicts

    None

Install

Authors

Maintainers

Sources

5.6.1.tar.gz
md5=279024789a0ec84a9d97d98bad847f97
sha512=698875bd3bfcd5baa47eb48e412f442d289f9972421321541860ebe110b9af1949c3fbc253768495726ec547fe4ba25483cd97ff39bc668496fba95b2ed9edd8