Lorsque l’on souhaite sauvegarder son travail. Il y a toujours des fichiers modifiés que l’on ne souhaite pas commiter.
Insérer avec classe dans VIM
tl;dr : sous vi utilisez a
au lieu de i
Tout le monde utilise VI pour éditer ses fichiers de configs sous linux ou les fichiers sur un serveur distant (il y a aussi nano
qui marche super bien). Moi personnellement je code aussi du php/js avec. Pour insérer du texte on utilise la touche i
comme insérer puis ESC
pour quitter le mode insertion. Je vais parler des autres touches pour insérer du texte.
Cloud9 un workspace en ligne
Je me suis inscris sur FreecodeCamp. C’est gratuit et annonce une formation du Bootstrap/Nodejs/React/D3/javascript. Bon au moment ou j’écris ces lignes D3 et React sont en coming soon (c’est dommage c’était surtout ca qui m’intéressait). L’idée est de former des développeur back et front pour aider des associations. L’idée me semble bonne.
Les Monades: Applicative et les listes
Dans le précédent post, j’avais parlé des applicatives sur les Maybes.
Nous allons voir ensemble comment les applicatives se comportent sur les listes.
Rappelons que l’idée des applicatives c’est
- ma valeur est dans un container
- et ma fonction que je vais appliquer est aussi dans un container
Pour la liste c’est un peu près la même idée.
- mes valeurs sont dans une collection
- mes fonctions sont aussi dans une collection
Je joue donc je programme 3
Nous continuons à la recherche de soft donc le but du jeux est d’apprendre à programmer.
Haskell : Stack
Introduction
Je ne développe pas en Haskell mais je regarde beaucoup. La série que j’écris sur la programmation fonctionnelle me force à regarder le langage de plus près. Le monde haskell s’est enrichi d’un nouvel outil Stack.
Stack et Haskell
Stack est un logiciel qui gère l’installation/les packages/la création/le build/les tests d’un projet Haskell.
Il a plusieurs avantages:
- Il a été pensé pour automatiser le build.
- Il a une ligne de commande sympathique que nous allons voir par la suite.
- Il utilise un fichier
stack.yml
c’est l’équivalent d’uncomposer.json
en php ou unpackage.json
en node. - Tout est installé dans le
~/.stack
tout les programmes sont isolés et n’interfèrent pas avec les autres logiciels déjà pré installés.
Les monades 5: les applicatives
Nous allons voir les foncteurs applicatifs.
Reprenons le container Maybe
Ce que j’aimerai c’est pouvoir faire ce genre d’opération
1 2 3 |
|
La bonne nouvelle c’est que c’est possible.
Je joue donc je programme 2
J’avais déjà parlé de jeux pour apprendre à programmer.
Les Monades : Evaluation partielle
Interlude.
J’ai besoin pour le prochain chapitre d’introduire la notion d’application partielle. Cela consiste à évaluer une partie de la fonction même si je n’ai pas tous les arguments.
Soit la fonction suivante.
1 2 3 |
|
Que donne l’exécution ?
1
|
|
Les Monades : Les listes
Nous continuons notre exploration des Monades/Functors, nous allons parler de Collection, de lapins, de marteaux et de non-déterminisme.
Voici notre nouveau container Le container List. Il prend en entrée un tableau (Array) ou en Php un Traversable
.
Nous allons voir ensemble les listes, Collections. Nous allons voir le map
, le bind
nous allons voir que le comportement n’est pas exactement le même..