From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id LAA08290; Tue, 15 Apr 2003 11:25:49 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id LAA08344 for ; Tue, 15 Apr 2003 11:25:48 +0200 (MET DST) Received: from mwinf0604.wanadoo.fr (smtp1.wanadoo.fr [193.252.22.25]) by nez-perce.inria.fr (8.11.1/8.11.1) with ESMTP id h3F9Pl923216 for ; Tue, 15 Apr 2003 11:25:47 +0200 (MET DST) Received: from julien (Mix-Montpellier-113-3-12.abo.wanadoo.fr [193.253.31.12]) by mwinf0604.wanadoo.fr (SMTP Server) with ESMTP id 9A2BC28002E5 for ; Tue, 15 Apr 2003 11:25:45 +0200 (CEST) From: =?iso-8859-15?Q?Julien_=C9LIE?= To: Subject: [Caml-list] Quelques questions sur Caml Light Date: Tue, 15 Apr 2003 11:26:54 +0200 Organization: TrigoFACILE - http://www.trigofacile.com/ Message-ID: <001701c30331$28977040$0c1ffdc1@julien> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: quoted-printable X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook, Build 10.0.2627 Importance: Normal X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 X-Spam: no; 0.00; 0.74:01 filtrer:01 char:01 retourner:99 binaires:01 lxor:01 j'obtiens:01 615:99 caml:01 int:01 definir:02 float:02 exception:02 modules:02 unix:02 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Bonjour, I read that messages could be written either in French or in English. However, if you want me to translate it into English or to write in English, I shall do it. You can also answer in English if you prefer. J'utilise la version 0.74 de Caml Light. J'ai plusieurs questions que je collige sur ce langage depuis quelque temps. Je vous remercie par avance pour vos r=E9ponses et j'esp=E8re que vous ne m'en voudrez pas pour autant de questions en un seul message. 1=B0) Pourquoi n'est-il pas possible de filtrer avec des motifs qui sont des tableaux ? let filtre =3D function [||] -> 0 | _ -> 1;; est par exemple refus=E9 syntaxiquement par Caml Light (mais pas par Objective Caml). Qu'est-ce qui ne convient pas ? (bien s=FBr, on peut remplacer le premier motif par =AB tab when vect_lenght tab =3D 0 =BB, mais je ne puis pas filtrer par exemple [|3;5;8|] ou tout autre tableau pour autant : une garde est alors n=E9cessaire). 2=B0) Toujours dans les reconnaissances de motifs, est-il possible de reconna=EEtre un nombre important de nombres ? L'utilisation de : let f =3D function `0`..`9` -> 0;; n'est pas tr=E8s satisfaisante puisque c'est une fonction =AB char -> int =BB. Comment faire une reconnaissance de 0 =E0 9 en nombres entiers ? du type : let f =3D function 0|1|2|3|4|5|6|7|8|9 -> 0;; Peut-=EAtre n'est-ce pas faisable dans une telle construction (il faut alors retourner au =AB if =BB). 3=B0) Pourquoi est-il indiqu=E9 dans la documentation : =AB value prefix + : float -> float -> float value prefix +. : float -> float -> float value add_float : float -> float -> float=20 Addition. =BB Je suis d'accord pour =AB prefix +. =BB et =AB add_float =BB mais pourquoi la premi=E8re ligne d=E9finissant =AB prefix + =BB alors que c'est une fonction =AB int -> int -> int =BB ? Elle ne fonctionne pas sur des flottants... 4=B0) Quelle est la technique pour manipuler avec des nombres binaires les pr=E9fixes =AB lor =BB, =AB land =BB, =AB lxor =BB et la fonction =AB lnot =BB ? J'aimerais en fait faire : =AB 0b111 lor 0b1010;; =BB et obtenir =AB 0b1111 =BB (et non 15 en d=E9cimal) N'existe-t-il pas une fonction pr=E9d=E9finie pour changer la base d'un nombre ? 5=B0) N'est-il pas possible de d=E9finir une exception qui prend en charge plusieurs param=E8tres ? Le mieux que je puisse faire est : =AB exception erreur of int*int;; =BB pour avoir deux entiers, mais c'est sous forme de paire. 6=B0) Comment fonctionnent les deux fonctions : format_int : string -> int -> string format_float : string -> float -> string Je ne suis pas arriv=E9 =E0 les trouver dans le code source (modules int/float). 7=B0) =C0 quoi sert la fonction =AB random__full_init =BB ? J'ai beau modifier la valeur donn=E9e au =AB seed =BB, j'obtiens toujours la m=EAme s=E9quence de nombres... random__full_init [|3;6|];; for i =3D 1 to 100 do print_int (random__int 1000); print_string " "; done;; renvoie les m=EAmes nombres que si j'avais auparavant fait : random__full_init [|5150;615|];; ou encore : random__full_init [|3;6;5;4;8;1;4;2;52;61|];; Je ne comprends pas tr=E8s bien ce qui se passe... 8=B0) O=F9 se procurer la version 0.75 pr=E9compil=E9e de Caml Light pour Windows ? Elle est disponible pour Unix, mais pas pour Windows... =C0 ce propos, quelles sont les nouveaut=E9s de la version 0.75 par rapport =E0 la version pr=E9c=E9dente 0.74 ? Le fichier =AB Changes =BB ne pr=E9cise rien. Merci d'avance pour toutes vos r=E9ponses. Cordialement, Julien =C9LIE ------------------- 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