代码之家  ›  专栏  ›  技术社区  ›  t0yv0

有哪些OCAML库用于惰性列表处理?

  •  3
  • t0yv0  · 技术社区  · 16 年前

    提供惰性列表处理的OCAML库有哪些?我在找这些方面的东西:

    type 'a lazy_list = (*'*)
      | Nil
      | Cons of 'a * 'a lazy_list lazy_t
    
    let from f = 
      let rec gen n = 
        lazy 
          (
            match f n with 
              | Some x ->
                  Cons (x, gen (n + 1))
              | None ->
                  Nil
          )
      in 
        gen 0
    

    与集成 Stream 类型和语法糖 回溯 Camlp4解析器会很好。

    2 回复  |  直到 12 年前
        1
  •  6
  •   nlucaroni    16 年前

    Ocaml Batteries 有一个 lazy list module 检查一下 to_stream 功能。至于回溯,现在有了stream.t,就可以查看camlp4的流解析器了。

        2
  •  2
  •   james woodyatt    15 年前

    此外,还有一个名为 Cf_seq 在我的 OCaml Network Application Environment 核心基础。实际上,我编写了一整套功能数据结构。这是一个2条款的BSD许可证。享受。

    更新 :代码已重命名“ Oni “现在它在BitBucket托管。您也可以使用 GODI 包装。