Penser en Types
$10.00
Prix minimum
$60.00
Prix suggéré

Penser en Types

Programmation au niveau Type en Haskell

À propos du livre

Ce livre est la traduction de Thinking with Types.

Ce livre est une traduction en Français de Thinking with Types qui a été initialement écrit en Anglais.

À propos des auteurs

Sandy Maguire
Sandy Maguire

Sandy might best be described somewhere between independent researcher and voluntarily-unemployed bum. At the ripe old age of 27 he decided to quit his highly-lucrative engineering job and decide to focus more on living than on grinding for the man. It's what you might call a work in progress.

He regularly writes about Haskell and Agda at reasonablypolymorphic.com.

Jean-Hugues de Raigniac
Jean-Hugues de Raigniac

Curious nature, 24h per day often feels too short.

Curieux de nature, 24h par jour me suffisent rarement.

Table des matières

Préface

Remerciements

Introduction

I Notions de base

1 - L’algèbre implicite des types

1.1 - Isomorphismes et cardinalités

1.2 - Types Somme, Produit et Exponentiel

1.3 - Exemple : jeu de morpion

1.4 - L’isomorphisme de Curry-Howard

1.5 - Représentations canoniques

2 - Termes, Types et Genres

2.1 - Le système de genres

2.1.1 - Le genre des « types »

2.1.2 - Les genres Flèche

2.1.3 - Les genres Contrainte

2.2 - Les genres Donnée

2.3 - Promotion des types intégrés

2.3.1 - Symboles

2.3.2 - Nombres naturels

2.3.3 - Listes

2.3.4 - Tuples

2.4 - Fonctions de niveau type

3 - Variance

II Levée des restrictions

4 - Utilisation des types

4.1 - Portée du type

4.2 - Applications de type

4.3 - Types ambigus

5 - Contraintes et TDAGs

5.1 - Introduction

5.2 - TDAGs

5.3 - Listes hétérogènes

6 - Types de rang N

6.1 - Introduction

6.2 - Rangs

6.3 - Détails de l’affaire

6.4 - Monade de relais

7 - Types existentiels

7.1 - Types existentiels et éliminateurs

7.1.1 - Types dynamiques

7.1.2 - Existentiels de genre Contrainte Généralisée

7.2 - Encadrer la portée de l’information à l’aide d’existentiels

8 - Rôles

8.1 - Coercitions

8.2 - Rôles

III Programmer au niveau Type

9 - Familles de types associées

9.1 - Construire des types à partir d'un schéma

9.2 - Création de termes associés

10 - Familles de première classe

10.1 - Défonctionnalisation

10.2 - Défonctionnalisation au niveau type

10.3 - Travailler avec les familles de première classe

10.4 - Polymorphisme ad hoc

11 - Données extensibles

11.1 - Introduction

11.2 - Sommes ouvertes

11.3 - Produits ouverts

11.4 - Étiquettes surchargées

12 - Erreurs de type personnalisées

13 - GHC.Generics

13.1 - Représentations génériques

13.2 - Dérivation du polymorphisme structurel

13.3 - Utilisation de métadonnée générique

13.4 - Performance

13.5 - Extensions Kan

14 - Monades indexées

14.1 - Définition et mécanisme nécessaire

14.2 - Attributions linéaires

15 - Types dépendants

15.1 - Vue d’ensemble

15.2 - Mise en œuvre ad hoc

15.3 - Machinerie généralisée

15.4 - Le paquet Singletons

15.5 - Paires dépendantes

15.5.1 - Journalisation structurée

IV Annexes

Glossaire

Solutions

Bibliographie

À propos de l’auteur

La garantie satisfaction de 60 jours à 100% de Leanpub

Dans les 60 jours suivant l'achat, vous pouvez obtenir un remboursement à 100% sur tout achat Leanpub, en deux clics.

Techniquement, c'est risqué pour nous, puisque vous aurez les fichiers du livre ou du cours dans tous les cas. Mais nous avons tellement confiance en nos produits et services, ainsi qu'en nos auteurs et lecteurs, que nous sommes heureux d'offrir une garantie de remboursement intégral pour tout ce que nous vendons.

Vous ne pouvez découvrir la qualité de quelque chose qu'en l'essayant, et grâce à notre garantie de remboursement à 100%, il n'y a littéralement aucun risque à le faire !

Alors, il n'y a aucune raison de ne pas cliquer sur le bouton Ajouter au panier, n'est-ce pas ?

Voir les conditions complètes...

Gagnez 8 $ sur un achat de 10 $, et 16 $ sur un achat de 20 $

Nous versons des redevances de 80 % sur les achats de 7,99 $ ou plus, et 80 % de redevances moins des frais fixes de 50 cents sur les achats entre 0,99 $ et 7,98 $. Vous gagnez 8 $ sur une vente de 10 $, et 16 $ sur une vente de 20 $. Ainsi, si nous vendons 5000 exemplaires non remboursés de votre livre à 20 $, vous gagnerez 80 000 $.

(Oui, certains auteurs ont déjà gagné beaucoup plus que cela sur Leanpub.)

En fait, les auteurs ont gagnéplus de 14 millions de dollars en écrivant, publiant et vendant sur Leanpub.

En savoir plus sur l'écriture sur Leanpub

Mises à jour gratuites. Sans DRM.

Si vous achetez un livre Leanpub, vous bénéficiez de mises à jour gratuites tant que l'auteur met à jour le livre ! De nombreux auteurs utilisent Leanpub pour publier leurs livres en cours de rédaction. Tous les lecteurs reçoivent des mises à jour gratuites, peu importe quand ils ont acheté le livre ou combien ils ont payé (même si c'était gratuit).

La plupart des livres Leanpub sont disponibles en PDF (pour ordinateurs) et en EPUB (pour téléphones, tablettes et Kindle). Les formats disponibles pour un livre sont indiqués dans le coin supérieur droit de cette page.

Enfin, les livres Leanpub n'ont aucune protection DRM absurde, vous pouvez donc les lire facilement sur n'importe quel appareil compatible.

En savoir plus sur les formats d'ebook Leanpub et où les lire

Écrire et publier sur Leanpub

Vous pouvez utiliser Leanpub pour écrire, publier et vendre facilement des livres numériques et des cours en ligne, qu'ils soient en cours ou terminés !

Leanpub est une plateforme puissante pour les auteurs sérieux, combinant un processus d'écriture et de publication simple et élégant avec une boutique axée sur la vente de livres numériques en cours de développement.

Leanpub est une machine à écrire magique pour les auteurs : écrivez simplement en texte brut, et pour publier votre livre numérique, cliquez simplement sur un bouton. (Ou, si vous produisez votre livre numérique à votre façon, vous pouvez même télécharger vos propres fichiers PDF et/ou EPUB et publier en un seul clic !) C'est vraiment aussi simple que ça.

En savoir plus sur l'écriture sur Leanpub