package camlp-streams

  1. Overview
  2. Docs
The Stream and Genlex libraries for use with Camlp4 and Camlp5

Install

dune-project
 Dependency

Authors

Maintainers

Sources

v5.0.1.tar.gz
md5=afc874b25f7a1f13e8f5cfc1182b51a7
sha512=2efa8dd4a636217c8d49bac1e4e7e5558fc2f45cfea66514140a59fd99dd08d61fb9f1e17804997ff648b71b13820a5d4a1eb70fed9d848aa2abd6e41f853c86

Description

This package provides two library modules:

  • Stream: imperative streams, with in-place update and memoization of the latest element produced.
  • Genlex: a small parameterized lexical analyzer producing streams of tokens from streams of characters.

The two modules are designed for use with Camlp4 and Camlp5:

  • The stream patterns and stream expressions of Camlp4/Camlp5 consume and produce data of type 'a Stream.t.
  • The Genlex tokenizer can be used as a simple lexical analyzer for Camlp4/Camlp5-generated parsers.

The Stream module can also be used by hand-written recursive-descent parsers, but is not very convenient for this purpose.

The Stream and Genlex modules have been part of the OCaml standard library for a long time, and have been distributed as part of the core OCaml system. They will be removed from the OCaml standard library at some future point, but will be maintained and distributed separately in this camlpstreams package.

Published: 27 Jun 2022

README

The Stream and Genlex libraries for use with Camlp4 and Camlp5

The camlp-streams package provides two library modules:

  • Stream: imperative streams, with in-place update and memoization of the latest element produced.
  • Genlex: a small parameterized lexical analyzer producing streams of tokens from streams of characters.

The two modules are designed for use with Camlp4 and Camlp5:

  • The stream patterns and stream expressions of Camlp4/Camlp5 consume and produce data of type 'a Stream.t.
  • The Genlex tokenizer can be used as a simple lexical analyzer for Camlp4/Camlp5-generated parsers.

The Stream module can also be used by hand-written recursive-descent parsers, but is not very convenient for this purpose.

The Stream and Genlex modules have been part of the OCaml standard library for a long time, and have been distributed as part of the core OCaml system. They will be removed from the OCaml standard library at some future point, but will be maintained and distributed separately in this camlp-streams package.

Dependencies (2)

  1. ocaml >= "4.02.3"
  2. dune >= "2.7"

Dev Dependencies (1)

  1. odoc with-doc

Used by (56)

  1. atdgen-runtime >= "2.3.3" & < "2.10.0"
  2. batteries >= "3.6.0"
  3. biniou >= "1.2.2"
  4. camelot >= "2.0.1"
  5. camlp4 >= "5.0"
  6. camlp5 >= "8.00.04"
  7. camomile >= "2.0.0"
  8. cca >= "0.6.2"
  9. cfstream >= "1.3.2"
  10. ciao_lwt
  11. codex
  12. config-file >= "1.2.2"
  13. coq-lsp != "0.1.6.1+8.17" & < "0.1.7+8.17" | = "0.1.8+8.16"
  14. diffast-core
  15. diffast-langs-cpp-parsing
  16. diffast-langs-fortran-parsing
  17. diffast-langs-java-parsing
  18. diffast-langs-python-parsing
  19. diffast-langs-verilog-parsing
  20. dream >= "1.0.0~alpha4"
  21. frama-clang
  22. gapi-ocaml
  23. kappa-agents >= "4.1.3"
  24. kappa-binaries >= "4.1.3"
  25. kappa-library >= "4.1.3"
  26. lablgl >= "1.07"
  27. lablgtk >= "2.18.13"
  28. lablgtk3 >= "3.1.3"
  29. lablgtk3-goocanvas2 >= "3.1.3"
  30. lablgtk3-sourceview3 >= "3.1.3"
  31. lambdapi >= "2.2.1"
  32. lambdasoup >= "1.0.0"
  33. ldap >= "2.5.1"
  34. ledit >= "2.06"
  35. lutils >= "1.54.1"
  36. lutin >= "2.71.15"
  37. lwt_lint
  38. lwt_ppx_to_let_syntax
  39. mdx >= "2.3.1"
  40. mpp >= "0.3.6"
  41. not-ocamlfind
  42. ocaml-lsp-server >= "1.17.0"
  43. ocamlformat-lib
  44. ocamlformat-mlx-lib
  45. ocamlify >= "0.1.0"
  46. ocamlmig
  47. odoc-parser >= "1.0.1"
  48. pgocaml >= "4.4.0"
  49. pgx >= "2.2"
  50. ppx_dream_eml
  51. ppx_parser
  52. pratter >= "1.2.1" & < "4.0.0"
  53. redis-sync >= "0.6"
  54. tar < "3.3.0"
  55. ulex-camlp5 >= "1.3"
  56. xenstore-tool

Conflicts

None