Topic de Lercle :

[OCAML] Aide pour définir un type

https://image.noelshack.com/fichiers/2023/16/6/1682159039-capture.png

En gros, il s'agit d'un type récursif, mais je ne sais pas comment faire, surtout qu'il y a des compositions de constructeurs et que le nombre d'éléments d'un nœud n'est jamais le même

Le seul truc s'approchant (dans le cours) que j'ai eu :

https://image.noelshack.com/fichiers/2023/16/6/1682159185-capture.png

T’as défini le type d’abord ?
C pas mon domaine mais je haut par soutien. Bonne chance khey

Le 22 avril 2023 à 12:27:17 :
T’as défini le type d’abord ?

Bah justement, je veux le type somme
Après, je dois faire des sous-types (ville, zone)

Le 22 avril 2023 à 12:27:39 :

Le 22 avril 2023 à 12:27:17 :
T’as défini le type d’abord ?

Bah justement, je veux le type somme
Après, je dois faire des sous-types (ville, zone)

Les seuls types que tu n’as pas besoin de définir ce sont les strings, les tuples, les listes.

Commence par définir Bv en premier.

Le 22 avril 2023 à 12:31:11 :

Le 22 avril 2023 à 12:27:39 :

Le 22 avril 2023 à 12:27:17 :
T’as défini le type d’abord ?

Bah justement, je veux le type somme
Après, je dois faire des sous-types (ville, zone)

Les seuls types que tu n’as pas besoin de définir ce sont les strings, les tuples, les listes.

Commence par définir Bv en premier.

Oui : Bv of string*((string*int) list)

Mais c'est la suite qui me pose problème (la composition de constructeurs)

Comment faire pour que le constructeur Dpt associe un string et un ou plusieurs constructeurs Bv ?

Edit: il fait un couple string et liste de Bv

Tu définis un nouveau type Dpt :

Dpt of string * (Bv of string*((string*int) list) list)
Les experts en Ocaml, cette espèce en voix de disparition qu'on ne retrouve plus que sur ce forum :bave:

Le 22 avril 2023 à 12:38:41 :
Tu définis un nouveau type Dpt :

Dpt of string * (Bv of string*((string*int) list) list)

Il me dit justement qu'il y a une erreur de syntaxe sur le second of

Essaie comme ça :

 type bureau_vote = Bv of string * (string * int) list
type departements_vote = Dpt of string * bureau_vote list

Le 22 avril 2023 à 12:44:11 :
Essaie comme ça :

 type bureau_vote = Bv of string * (string * int) list
type departements_vote = Dpt of string * bureau_vote list

Ouais là ça marche, merci

Le 22 avril 2023 à 12:40:03 :
Les experts en Ocaml, cette espèce en voix de disparition qu'on ne retrouve plus que sur ce forum :bave:

Meilleur langage de l’univers.

Le 22 avril 2023 à 12:47:58 :

Le 22 avril 2023 à 12:40:03 :
Les experts en Ocaml, cette espèce en voix de disparition qu'on ne retrouve plus que sur ce forum :bave:

Meilleur langage de l’univers.

Que penses-tu du Haskell, en comparaison ?

Le 22 avril 2023 à 12:48:36 :

Le 22 avril 2023 à 12:47:58 :

Le 22 avril 2023 à 12:40:03 :
Les experts en Ocaml, cette espèce en voix de disparition qu'on ne retrouve plus que sur ce forum :bave:

Meilleur langage de l’univers.

Que penses-tu du Haskell, en comparaison ?

Jamais touché.

On construit des putains d’avions grâce à Caml, t’as l’un des plus gros hedge funds du monde qui fait que du Caml, on fait quoi avec Haskell ?

C'est quoi cette merde
Il est où ton constructeur de type

Données du topic

Auteur
Lercle
Date de création
22 avril 2023 à 12:25:04
Nb. messages archivés
39
Nb. messages JVC
36
Voir le topic sur JVC

Afficher uniquement les messages de l'auteur du topic

En ligne sur JvArchive

JvArchive compagnon

Découvrez JvArchive compagnon , l'userscript combattant la censure abusive sur le 18-25 !