[
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: | Su Zhang <westlifezs@g...> |
| Subject: | a problem about type recongnition |
Hi all,
I have a problem while executing ocaml, did you see any problem in my code?
and do I need to give each variable a type before I use it ?my code is in
the following, you can take a look at the code and the info of the errors
let rec first(x, y, z)=x
let rec second(x,y,z)=y
let rec third(x,y,z)=z
let rec rebuilt anss (m,n,ys)= match anss with
[] -> (m,n,ys)
|element::anss ->
if m>first(element ) and n< second(element)
then rebuilt anss (m,n,ys)
else element::(rebuild anss (m,n,ys))
let rec sum anss cur n ys= match cur with
None ->
(match ys with
[]-> anss
|y::ys->
if y=0
then sum(rebuild anss (n,n,0)) None n+1 ys
else sum anss (Some(n, y, [y])) (n + 1) ys)
the red area is shown has an error, and the error info is like this:"This
expression has type int list -> 'a but is here used with type int", so would
you please let me know if possible how can I let the compiler know the type
of anss is a list but not an integrer?
thank you
--
Su Zhang
PHD Student
Computer Information and Science
Kansas State University