caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "Flávio Leonardo Cavalcanti de Moura" <flavio@macs.hw.ac.uk>
To: caml-list@inria.fr
Subject: [Caml-list] type matching
Date: Fri, 17 Sep 2004 15:53:34 +0100	[thread overview]
Message-ID: <1095432814.6857.19.camel@lcflavio.macs.hw.ac.uk> (raw)

Hi there, 

I am trying to build a normalisation function for lambda terms which
uses the leftmost strategy. Since the function is not working properly,
I decided to try it at the top level. So after loading some cmo and cma
bytecodes I got:

# let beta_normout l_upl = 
  let new_l_upl = ref l_upl in 
  let exp = ref (Common.first(List.hd !new_l_upl)) in 
    while (Common.pos_leftBR !exp <> [3]) do 
      new_l_upl := reduce_pure !exp 1 (Common.pos_leftBR !exp)
!new_l_upl;
      exp := (left_normal_lse !exp (Common.pos_leftBR !exp))
    done; 
    !new_l_upl;;
              val beta_normout :
  (Setypes.exlambda * int * int list * string) list ->
  (Setypes.exlambda * int * int list * string) list = <fun>

Then, when I try to run an example, I get:

# beta_normout [((A(L(DB 1),DB 2)),0,[],"")];;
Characters 14-41:
  beta_normout [((A(L(DB 1),DB 2)),0,[],"")];;
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
This expression has type exlambda * int * 'a list * string
but is here used with type Setypes.exlambda * int * int list * string

My dout is: shouldn't the type exlambda match with the type
Setypes.exlambda as well as 'a list with int list in the two last line
above?

Why Ocaml differ between the types Setypes.exlambda and exlambda?

I will be very happy if someone could help me.

best regards, 

Flavio.

-------------------
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:[~2004-09-17 14:55 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-09-17 14:53 Flávio Leonardo Cavalcanti de Moura [this message]
2004-09-17 16:08 ` skaller

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=1095432814.6857.19.camel@lcflavio.macs.hw.ac.uk \
    --to=flavio@macs.hw.ac.uk \
    --cc=caml-list@inria.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).