lec 05 notes

This commit is contained in:
SowinskiBraeden committed 2026-02-05 11:37:06 -08:00
1 parent 9d6617daee
commit 2da8e0df6c
10 files changed
+249

No files matched your search

+12
View File
@@ -0,0 +1,12 @@
(* we can impliment our own ref type *)
type 'a ref = { mutable contents: 'a };;
(* reference and dereference implimentation *)
let ref x = { contents = x };;
let (!) r = r.contents;;
(* assign to a mutable field *)
let (:=) r x = r.contents <- x;;
let incr r = r.contents <- r.contents + 1;;
let decr r = r.contents <- r.contents - 1;;