Commit 1332b24b authored by POTTIER Francois's avatar POTTIER Francois

Use `memoize` instead of `tabulate` in `delta`.

parent 78a947be
......@@ -301,11 +301,10 @@ let nullable : regexp -> bool =
star.) More precisely, for every character [a], [delta a] is a function of
type [regexp -> regexp]: we memoize every function [delta a] separately. *)
let delta : Char.t -> regexp -> regexp =
let module T = Tabulate.ForHashedType(Char)(Char) in
let module C = Memoize.ForHashedType(Char) in
let module M = Memoize.ForHashedType(R) in
T.tabulate (fun a ->
C.memoize (fun a ->
M.fix (fun delta e ->
match skeleton e with
| EEpsilon ->
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment