caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "Dmitry Lomov" <dsl@tepkom.ru>
To: "Warp" <warplayer@free.fr>
Cc: "OCaml" <caml-list@inria.fr>
Subject: Re: [Caml-list] Bug value
Date: Tue, 19 Feb 2002 14:43:24 +0200	[thread overview]
Message-ID: <005101c1b943$059c6ed0$2a45fea9@TRAVELLER> (raw)
In-Reply-To: <00f901c1b93e$e95ad6c0$3c00a8c0@warp>

Hello,
I assume that the answer to you problem is that such "assignments" to record
fields
occur in order deemed convenient (read: efficient) by compiler, and not
necessarily in
the order you write them in your code.

In the second snippet, compiler probably generates code in such a way that
(input_value file : finfos) occurs before (input_value file : fid).

The first snippet is _the_ way in OCaml to ensure the order of execution of
functions
with side effects, like input_value.

Hope this helps,
Friendly,
Dmitry


----- Original Message -----
From: "Warp" <warplayer@free.fr>
To: "OCaml" <caml-list@inria.fr>
Sent: Tuesday, February 19, 2002 2:13 PM
Subject: [Caml-list] Bug value


> Is the following code :
>
> let read_fdata file =
>  let id = (input_value file : fid) in
>  let infos = (input_value file : finfos) in
>  {
>   id = id;
>   infos = infos;
>   childs = clist;
>   deps = dlist;
>  }
>
> equivalent to :
>
> let read_fdata file =
>  {
>   id = (input_value file : fid);
>   infos = (input_value file : finfos);
>  }
>
> ?
> Because the first one got no problem while the second one is causing a
fatal
> bug at run-time when I try to access the struct
>
> PS :
> -----
> type fid = int
> type fver = int
> type ftype = int
> type finfos = {
>  mutable name : string;
>  mutable parent : fid;
>  mutable ver : fver;
>  mutable t : ftype;
> }
>
> Warp
>
> -------------------
> 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

-------------------
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


  reply	other threads:[~2002-02-19 12:43 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-19 12:13 Warp
2002-02-19 12:43 ` Dmitry Lomov [this message]
2002-02-19 14:35 ` Sven

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='005101c1b943$059c6ed0$2a45fea9@TRAVELLER' \
    --to=dsl@tepkom.ru \
    --cc=caml-list@inria.fr \
    --cc=warplayer@free.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).