私は、再帰関数を持っていると私はMémoïsantメモ化リストOCamlの
マイ再帰関数で書き換えたい:
let rec sum_cube l =
match l with
| [] -> 0
| x :: s -> (x * x * x) + sum_cube s
をし、私はこれを試してみました:
let memo = Hashtbl.create 17
let rec sum_cub_memo l =
try
Hashtbl.find memo l
with Not_found ->
let fn = function
| [] -> 0
| x::s -> (x * x * x) sum_cub_memo s
in
Hashtbl.add memo l fn
fn ;;
私が持っていますエラー:
この式の型はです。int list - > intが表現されましたが、タイプはintリストです!
表現? – melpomene
ああ。 'fn'を詳しく見てください。それは何ですか?どうやって使ってるの? – melpomene
@melpomene Hashtbl.addメモl fn – CamlX