Les types construits en OCaml

Pages: 3 (742 mots) Publié le: 4 janvier 2015
TYPES CONSTRUITS!

S5

Types construits
Les types construits ou explicites sont des types définis par l'utilisateur!
• Type somme!
• Type enregistrement!

Le type somme!
Le type sommecorrespond à une union de type que l'on distingue par un marqueur ou un
label. !
Le type somme en tant que collection de symboles!
• Un questionnaire (oui, non, peut-être)!
Ex l'ADN: !
L'ADN necontient que 4 bases, mais est traditionnellement codée par des caractères. Ce
type admet aussi d'autres caractères. On décrit un type ayant 4 symboles seulement
correspondant aux 4 bases. !
• type=|....|
• ::=
• type adn_t = A|T|G|C;;
On a défini un ensemble de 4 symboles {A,T,G,C}!
application : base complémentaire!
let complémentaire b=
match b with
|A->T
|G->C
|T->A
|C->G;;
letcomplémentaire b=
match b with
|'A'->'T'
|'a'->'T'
|'G'->'C'
|'g'->'C'
|'T'->'A'
|'t'->'A'
|'C'->'G'
|'c'->'G'
|_-> failwith "erreur";;
Transformation d'une séquence d'ADN en séquence d'acidesaminés:!
type aminoacid_t=Leu|Typ|Met|Ser|...|Stop;;
let codon2aa c=
match c with
|(A,A,A)-> Lys
|(A,A,T)-> Asn

INTRODUCTION À L'ALGORITHMIQUE

1

TYPES CONSTRUITS!

S5

.
.
.|(C,C,C)->Pro;;
let rec traduction s=
match s with
|a1::a2::a3::r -> codon2aa (a1,a2,a3)::traduction r
|_->[];;
Autre utilisation des types sommes!
Les jours de la semaine!
Les mots !
lesquestionnaires oui, non, peut-être!
Type somme comme union!
type numérique (entier+flottant)!
type numeric_t= Int of int |Float of float;;
let x = Int 3;;
let y= Float 3.5;;
Ex: addition pour lenumérique!
let add n1 n2=
match (n1,n2) with
|(Int x1, Int x2) -> Int x1+x2
|(Float x1, Float x2) -> Float x1+.x2
|(Int x1, Float x2) -> Float (float_of_int x1)+.x2
|(Float x1, Int x2) -> Float(x1+.(float_of_int x2));;
Type somme récursif!
type rec () =
Type liste entier!
'a::'a list |[]
type rec 'a list_t=Empty|Cell int * intlist;;
autre exemple, arbre binaire!
type rec inttree=...
Lire le document complet

Veuillez vous inscrire pour avoir accès au document.

Vous pouvez également trouver ces documents utiles

  • Ocaml
  • CONSTRUITS
  • D VOLOPPEMENTS CONSTRUITS
  • Types
  • Types
  • Developpement construit
  • Bachelard, tout est construit
  • Comment se construit l'identité nationale ?

Devenez membre d'Etudier

Inscrivez-vous
c'est gratuit !