Browse thread
[Caml-list] Problem in modifying a mutable element in an array
- WatchDog
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | WatchDog <watchdog@f...> |
| Subject: | [Caml-list] Problem in modifying a mutable element in an array |
Hello !
My problem has first appeared in a CamlLight implementation, but I have
then tried to do the same on O'Caml and the problem remained equal. But
I'm sure you'll be able to provide some help, won't you ?
In Caml Light :
#open "random";;
type agent = { mutable initial : int ; mutable courant : int ;
mutable longueur : float ; mutable liste_parcourue : int
list ;
à_visiter : int vect } ;;
let agent_init = { initial = 0 ; courant = 0 ; longueur = 0. ;
liste_parcourue = [] ;
à_visiter = make_vect n 1 } ;;
let f = make_vect m agent_init ;;
let set_f () = for p = 0 to (m-1) do
begin
f.(p).initial <- (int n) ;
f.(p).courant <- (int n) ;
f.(p).liste_parcourue <- [(int n)] ;
f.(p).à_visiter.(int n) <- 0
end
done
;;
And then set_f() doesn't work properly : it seems Caml refuses to modify
one element (for instance f.(5).initial) without modifying automatically
all its brothers, e.g. all the f.(i).initial ; for i from 0 to (m-1).
The fact is that I'd like to modify it element-by-element, and not all
at the same time.
Your help would be a real relief !!
Thanks
JB, from Paris.
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners