Journal TapTempo en brainfuck

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
48
3
mar.
2018

TapTempo est disponible en version BrainFuck

C'est un portage partiel (faut pas pousser ;), donc :

  • Pas d'options
  • Pas de localisation
  • Pas de remise à zéro des samples
  • Que deux samples
  • N'importe quelle touche fonctionne (Pas seulement <Return>)

Mais c'est tout de même une version Brainfuck qui fait son boulot :

[-]
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-]
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-]
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-]
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-]
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-]
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-]
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-] ++++++++++++++++++++++++++++++++.[-] [-]
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-]
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-]
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-] ++++++++++++++++++++++++++++++++.[-] [-]
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-]
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[-]
[-]
(…)

Journal Portage de TapTempo en Haskell

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
21
1
mar.
2018

Bonjour à tous,

Suite aux portages de TapTempo en divers langages (Rust, Ada, Javascript, Perl (5.10), Python (2.7), bash), il fallait une version Haskell de TapTempo.

J'ai essayé de respecter scrupuleusement ce qui est décrit dans le journal d'introduction de TapTempo de mfz. Toute différence serait un bug, j'attends vos rapport de bug sur GitHub.

Le répertoire src est composé des fichiers suivants, chacun ayant sa petite particularité Haskell que je détaille dans la suite :

Journal le "style fonctionnel" en vidéos (Nix, NixOS, Haskell)

Posté par  (site web personnel) . Licence CC By‑SA.
43
8
jan.
2018

Salut

Si ça intéresse quelqu'un, j'ai fait quelques vidéos sans prétention sur l'utilisation de Nix/NixOS et la programmation en Haskell. Pour l'instant, il n'y en a qu'une dizaine; je pense en faire d'autres plus tard mais… plus tard.

Les vidéos : https://www.youtube.com/watch?v=i6s-G_Hh3s4&list=PLe8vnuC2T7iGE3w_d-MCHw5mLzRAMiCM9

Les résumés + codes : https://github.com/nokomprendo/tuto_fonctionnel

Les sujets des vidéos :
01 : Installation de NixOS
02 : Gestion de paquets avec Nix
03 : Installation de Nix sur Debian
04 : Utilisation des canaux avec Nix/NixOS
05 (…)

Sortie de GHC 8.2.1

46
7
août
2017
Programmation fonctionnelle

Une nouvelle version majeure du compilateur GHC pour Haskell est sortie.

GHC

Cette dépêche présente rapidement le langage Haskell, puis les nouveautés de la version 8.2.1 qui vient de sortir. En fin de dépêche, un exemple plus complet d’un code Haskell est présenté afin de motiver à l’usage de ce langage.

Journal Sortie de haskus-system 0.7

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
55
30
juin
2017

Bonjour,

Je n’ai encore jamais parlé ici du logiciel que je développe. Comme je viens d’annoncer la sortie de la version 0.7, c’est l’occasion. Ça parle de Linux et de Haskell.

Qu’est‐ce que c’est ?

L’idée de base consiste à prendre le noyau Linux seul (sans libc ni rien) et à refaire les couches d’abstraction au‐dessus en Haskell. Ça permet de faire de la programmation système tout en bénéficiant du système de types, de la mémoire transactionnelle, des green threads, etc.

(…)

Appel à conférences PolyConf 17 à Paris (7 au 9 juillet) : « The Universe of Programming Languages »

Posté par  . Édité par Benoît Sibaud, Davy Defaud et Nils Ratusznik. Modéré par Nils Ratusznik. Licence CC By‑SA.
9
14
mar.
2017
Éducation

PolyConf est une conférence pour échanger sur les meilleures pratiques de la programmation. Les programmeurs sont trop souvent réduits à un langage de programmation alors qu’il est plus sage, dans un contexte d’innovation constante, d’apprendre à apprendre et de combiner le meilleur de chaque langage dans des solutions ad hoc. Autrement dit, le fait de ne pas se spécialiser en tant que développeur sur un langage spécifique, pour préférer une approche polyvalente. Concrètement, cela s’est reflété dans le programme de l’événement qui a traité de nombreux sujets : Ruby, Python, Haskell, Rust, Erlang, Go, Java, F#, JavaScript…

NdM. : cette édition est intitulée « L’univers des langages de programmation. Ne voyez pas les frontières / limites, voyez les horizons » (The Universe of Programming Languages. Never see boundaries, but only horizons). Les trois précédentes éditions ont eu lieu à Poznan en Pologne. Les huit éditions précédentes (à l’époque l’événement se nommait « RuPy », a priori plus centré sur Ruby et Python) ont eu lieu à Budapest, Brno, au Brésil et en Pologne.

L’appel à conférences se termine le 19 mars.

Sortie de GHC 8.0.2 et une petite histoire de typage statique

Posté par  (site web personnel) . Édité par Davy Defaud, rogo, palm123, Benoît Sibaud, ZeroHeure, Ontologia, Anthony Jaguenaud, Nils Ratusznik et Lucas. Modéré par ZeroHeure. Licence CC By‑SA.
Étiquettes :
33
23
jan.
2017
Programmation fonctionnelle

GHC, le compilateur Haskell le plus utilisé, est sorti en version 8.0.2 ; vous pouvez consulter l’annonce de la sortie datée du 11 janvier 2017, ainsi que les notes de version.

Il s’agit principalement d’une version de suivi qui corrige plus de deux cents bogues depuis la version 8.0 dont l’annonce de la sortie avait été faite sur LinuxFr.org. Donc, à ce titre, il n’y a pas grand chose à raconter. Le futur, c’est GHC 8.2 qui devrait arriver aux environs d’avril, si l’on en croit le planning. Celle‐ci devrait apporter principalement des améliorations de performance de l’environnement d’exécution parallèle et du ramasse‐miettes.

Comme on frôle la dépêche bookmark et que je tiens à mon karma, je vais vous présenter une fonctionnalité de Haskell, que l’on retrouve dans de nombreux langages. J’ai nommé les ADT, ou types algébriques de données.

Journal Sortie de GHC 8.0.2 et une petite histoire de typage statique

32
19
jan.
2017

GHC, le compilateur Haskell le plus utilisé, est sorti en version 8.0.2, vous pouvez consulter l'annonce de la sortie datée du 11 janvier 2017 ainsi que les notes de version

Il s'agit principalement d'une version de suivi qui corrige plus de deux cent bugs depuis la version 8.0 dont l'annonce de la sortie
avait été faite sur http://linuxfr.org. Donc à ce titre, il n'y a pas grand chose à raconter. Le futur, c'est GHC 8.2 qui (…)

Le compilateur GHC Haskell en version 8.0.1

Posté par  (site web personnel) . Édité par palm123, patrick_g, Benoît Sibaud, claudex et Ontologia. Modéré par Ontologia. Licence CC By‑SA.
Étiquettes :
33
2
juin
2016
Programmation fonctionnelle

Le 21 mai 2016 est sortie la nouvelle version du compilateur Haskell GHC.

GHC est le compilateur principal du langage Haskell, disponible sur plusieurs plate-forme et sous une licence libre proche de la BSD.

Cette version succède à GHC 7.10.

Cette dépêche présente rapidement Haskell grâce à un exemple de code puis une sous-partie des nouveauté de GHC 8.0, le compilateur Haskell le plus utilisé. Comme on parle rarement d'Haskell ici, je vais le présenter avec une approche personnelle puis je me servirais de la liste des nouveautés pour présenter quelques fonctionnalités de ce langage de programmation.

Journal Le compilateur GHC Haskell en version 8.0.1

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
39
1
juin
2016
Ce journal a été promu en dépêche : Le compilateur GHC Haskell en version 8.0.1.

Le 21 mai 2016 est sortie la nouvelle version du compilateur Haskell GHC. Le mail d'annonce. notes de version.

GHC est le compilateur principal du langage Haskell, disponible sur plusieurs plate-forme et sous une (https://www.haskell.org/ghc/license](licence) libre qui proche de BSD.

Cette version succède à GHC 7.10.

Ce journal présente rapidement Haskell grâce à un exemple de code puis une sous-partie des nouveauté de GHC 8.0, le compilateur Haskell le plus utilisé. Comme on parle rarement d'Haskell (…)

Forum Programmation.autre Haskell : simplifier 2 "case" imbriqués

Posté par  . Licence CC By‑SA.
Étiquettes :
1
12
mai
2016

Bonjour,
je viens de coder un petit truc vite fait en Haskell pour remplir des noms de ville à partir de codes postaux dans un fichier CSV. Ca marche, mais j'aimerais simplifier ma fonction "main" qui contient 2 "case" imbriqués, à cause de la fonction parseCSVFromFile qui a pour type :

parseCSVFromFile :: FilePath -> IO (Either ParseError CSV)

Je fais donc la gestion d'erreur à la main, mais vu que Either est une monade, j'aimerais que ça (…)

Journal Haskell -- Évaluation paresseuse

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
37
3
mai
2016

Bonjour,

Je voulais vous parler d'évaluation paresseuse, en me servant comme support du langage Haskell.

L'évaluation paresseuse c'est juste le summum de la procrastination, reporter à demain (ou jamais) ce que tu n'as pas besoin de faire aujourd'hui. En haskell, une fonction n'est évaluée que si la valeur de retour est nécessaire pour évaluer immédiatement un autre résultat.

Je ne vous parlerai pas des avantages ou inconvénient de cela, mais je vais plutôt donner des exemples que (…)

Journal Haskell et le tri

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
30
18
fév.
2016

Bonjour nal.

Introduction

Cela fait longtemps que je n'ai pas posté ici, cela me manquait. Je trouve que LinuxFR ne parle pas assez de Haskell, alors je vais en parler un peu aujourd'hui sur une digression totalement inintéressante et proche de la masturbation intellectuelle. On va partir de rien et discuter de la fonction de tri fournie dans la librairie standard (base) de GHC, le compilateur le plus connu / utilisé.

L'idée c'est de vous présenter un peu Haskell (…)

Forum Programmation.autre Intégrer automatiquement une image générée par un fragment de code dans du markdown

Posté par  . Licence CC By‑SA.
Étiquettes :
1
25
déc.
2015

Bonsoir,
je code un générateur de GCode en Haskell. Il va falloir que je fasse un peu de documentation…
Je souhaiterais mettre des bouts de code dans la doc, et intégrer automatiquement une visualisation 3D de ce que donne ce bout de code.
Ce genre de truc existe pour le langage R, ça s'appelle knitr. ça permet d'intégrer des courbes générée par un bout de code dans du markdown, automatiquement.
knitr supporte haskell, mais intègre juste la sortie texte.

(…)

Forum Programmation.autre Problème de types en Haskell

Posté par  . Licence CC By‑SA.
Étiquettes :
1
21
oct.
2015

Bonjour,
j'ai de nouveau un souci en Haskell. Je code un générateur de GCode.

J'ai un type 'Operation a' qui me sert à créer des opérations (par exemple une poche circulaire, un contour, un carré, etc.), et à les composer entre elles.

si je fais runOperation (circularPocket 10 10 0.5) :: GCode, ça me retourne du GCode.
si je fais runOperation (circularPocket 10 10 0.5) :: Drawing, ça me retourne l'image du parcours de l'outil.
si je fais (…)