Caml — Vikipediya
Paradiqma: | Funksional, obyekt yönümlü |
Yaradılıb: | 1985 |
Tərəfindən: | Gérard Huet, Guy Cousineau, Ascánder Suárez, Pierre Weis, Michel Mauny (Heavy Caml), Xavier Leroy (Caml Light, OCaml) |
İlham alıb: | ML |
İlhamlanıb: | F# |
Ə.S: | Kross Platform |
Veb səhifə: | http://caml.inria.fr/ |
Caml(Categorical Abstract Machine Language)- 1985-ci ildə Fransız bir qurum olan İNRİA tərəfindən yaradılmış funksional və obyektyönümlü proqramlaşdırma dilidir. Digər adı ilə də Objective Camlda adlanır.
Nümunələr
[redaktə | mənbəni redaktə et]Hello World
[redaktə | mənbəni redaktə et]print_endline "Hello World!";;
Faktorial
[redaktə | mənbəni redaktə et]let rec fact n = if n=0 then 1 else n * fact(n - 1);;
alternativ olaraq bu cür də yazıla bilər
let rec fact = function | 0 -> 1 | n -> n * fact(n - 1);;
Fibonaççi ədədləri
[redaktə | mənbəni redaktə et]let rec fib n = if n < 2 then 1 else fib (n - 1) + fib (n - 2) ;; let main () = if Array.length Sys.argv <> 2 then begin print_string "Usage: fib <number>"; print_newline() end else begin try print_int (fib (int_of_string Sys.argv.(1))); print_newline () with Failure "int_of_string" -> print_string "Bad integer constant"; print_newline () end ;; if !Sys.interactive then () else main ();;