let d = input_line ich in
match Str.split (Str.regexp "[ \t]+") d with
| [] -> aux r s
+ | "#" :: _ -> aux r s
| t :: "<-" :: p -> aux ((p, (false, t, None)) :: r) s
| t :: c :: "<-" :: p -> aux ((p, (false, t, Some c)) :: r) s
+ | t :: "<+" :: p -> aux ((p, (true, t, None)) :: r) s
| t :: c :: "<+" :: p -> aux ((p, (true, t, Some c)) :: r) s
| [a; "->"; t] -> aux r ((a, t) :: s)
| ["->"] -> r, s