Journal autocsv2sql : un utilitaire pour convertir ses CSV sans se poser de question, "écris" en OCaml

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
10
13
mar.
2024

Cher Journal,

J'ai probablement mal cherché dans les tréfonds de l'internet, mais je rêvais depuis longtemps d'un bête utilitaire en CLI pour me convertir un CSV en SQL sans me poser de question, ie. je lui donne le fichier et il se débrouille avec les types de données, l'ordre de création de table.

C'est maintenant chose faite avec autocsv2sql, un utilitaire que j'ai "écris" en OCaml, et qui fait globalement bien le taf pour la 20aine de CSV que (…)

De OCaml à ReScript : création d'un nouveau langage ?

Posté par  (site web personnel) . Édité par Ysabeau 🧶 🧦, palm123, Snark, Benoît Sibaud, tisaac, Obi MO, vmagnin, Nicolas Casanova, gasche et Ltrlg. Modéré par Ysabeau 🧶 🧦. Licence CC By‑SA.
Étiquettes :
33
1
fév.
2022
Programmation fonctionnelle

Depuis toujours, le compilateur propose deux manières pour générer un programme exécutable à partir d’un code source OCaml : produire un programme binaire (dépendant de l’architecture donc) ou un byte code qui peut être réutilisé sur n’importe quelle plateforme.

Il y a dix ans, le projet js_of_ocaml apparaissait, permettant de transformer ce bytecode (que pratiquement personne n’utilise) en code JavaScript. Ce projet a ouvert une porte dans l’univers web, puisqu’il permet d’utiliser la force du langage OCaml (typage, réutilisation des bibliothèques existantes) directement dans le navigateur. Il devient possible de contrôler un formulaire saisi par l’utilisateur dans le navigateur, ou sur le serveur avec le même code : il suffit d’inclure la même bibliothèque dans la chaîne de compilation JavaScript et dans la chaîne de compilation du serveur.

🏆 Meilleures contributions LinuxFr.org : les primées de décembre 2021

Posté par  (site web personnel, Mastodon) . Modéré par patrick_g.
17
10
jan.
2022
LinuxFr.org

Nous continuons sur notre lancée de récompenser celles et ceux qui chaque mois contribuent au site LinuxFr.org (dépêches, commentaires, logo, journaux, correctifs, etc.). Vous n’êtes pas sans risquer de gagner un livre des éditions Eyrolles ou ENI. Voici les gagnants du mois de décembre 2021 :

Les livres gagnés sont détaillés en seconde partie de la dépêche. N’oubliez pas de contribuer, LinuxFr.org vit pour vous et par vous !

OCaml en 2021

Posté par  . Édité par Yves Bourguignon, chimrod, Ysabeau 🧶 🧦, Snark, Benoît Sibaud, Anonyme, Bruno Ethvignot, Quidam, tisaac, Michaël, dourouc05 et syntaxerror. Modéré par Benoît Sibaud. Licence CC By‑SA.
Étiquettes :
58
25
sept.
2021
Programmation fonctionnelle

La version 4.13.0 du langage OCaml est sortie le 24 septembre 2021, sept mois après OCaml 4.12.0 sortie le 24 février 2021.

OCaml est un langage fonctionnel de la famille des langages ML (dont font partie SML et F#). Il s’agit d’un langage fonctionnel multi‐paradigme fortement typé qui permet de mélanger librement les trois paradigmes : fonctionnel, impératif et objet. La plus grande spécificité d’OCaml dans le paysage des langages fonctionnels (Haskell, Rust, F#…) est probablement son système de module : les modules d’OCaml font partie intégrante du langage, et il est par exemple possible de décrire des modules paramétrés par d’autres modules (à travers des foncteurs).

La grande nouveauté de cette année 2021 est la convergence de l’environnement d’exécution entre la version standard d’OCaml et le prototype d’OCaml multi-cœur. Cette convergence amorce une nouvelle étape dans la transition vers OCaml multi-cœur. Au-delà des progrès vers OCaml multi-cœur, cette année 2021 a vu une de nombreuses avancées pour le langage OCaml et son compilateur que ce soit en termes d’architectures supportées, de messages d’erreurs, de fonctionnalités du système de types, mais aussi des améliorations de confort pour les programmeurs que ce soit au niveau des outils de profilage, de la gestion des avertissements ou de la bibliothèque standard.

Journal Retour d'expérience sur les langages de programmation

Posté par  (site web personnel) . Licence CC By‑SA.
42
13
nov.
2020

Ces derniers temps, j'apprends moins de langages nouveaux qu'il y a quelques années. Du coup, je me suis dit que c'était une occasion de faire le tour sur l'essentiel des langages que j'ai testés.

Dans ce journal, je fais un peu dans le classique du ceci ou cela m'a plu dans tel langage, telle autre chose ne m'a pas plu. Le tout est très subjectif, biaisé et reflète fortement les trucs que j'ai voulu faire avec ces langages. Mais bon (…)

OCaml 4.06 et 4.07

Posté par  . Édité par ZeroHeure, Snark, Julien Jorge, Davy Defaud, Pierre Jarillon, Nils Ratusznik et j_m. Modéré par Pierre Jarillon. Licence CC By‑SA.
Étiquettes :
37
2
oct.
2018
Programmation fonctionnelle

La version 4.07.0 du langage OCaml a été publiée le 10 juillet 2018 soit quelques mois après la sortie de la version 4.06.0, annoncée le 3 novembre 2017. OCaml est un langage fonctionnel de la famille des langages ML (dont font partie SML et F#). Il s’agit d’un langage fonctionnel multi‐paradigme fortement typé qui permet de mélanger librement les trois paradigmes : fonctionnel, impératif et objet.

Logo OCaml

OCaml arrive en version 4.07 avec un tout nouvel espace de noms, Stdlib, pour sa bibliothèque standard. Ce nouvel espace de noms présage l’intégration progressive de nouveaux modules dans la bibliothèque standard.

Un autre changement majeur, OCaml 4.06 marque la fin de la transition vers des chaînes de caractères immuables, changement amorcé dès OCaml 4.02 .

À côté de ces changements majeurs, on retrouve de nombreuses améliorations de qualité de vie : de nouveaux opérateurs d’indexation et des champs hérités pour les types objets. Mais aussi pas mal de travail de fond pour préparer l’intégration de la branche multicore, améliorer les passes d’optimisations Flambda, ou faire évoluer le système de types en fixant des irrégularités.

Journal Portage de TapTempo en OCaml

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

Je me désespérais de voir apparaître le portage de TapTempo en OCaml alors je m'y colle.
Taptempocaml est donc le portage du désormais célèbre TapTempo en OCaml.
Ce portage n’a pas la prétention de présenter l’état de l’art de la programmation fonctionnelle. Le but ici est plutôt de fournir le code le plus simple et le plus proche de l’original et ceci pour trois raisons :
I. Bien que le langage fournisse des fonctionnalités très évoluées, dans 93 % (…)

OCaml 4.04 et 4.05

Posté par  . Édité par octachron, Yves Bourguignon, kantien, palm123, Snark, Davy Defaud, Benoît Sibaud, claudex, gasche, Ontologia, patrick_g, Dinosaure et Lucas. Modéré par patrick_g. Licence CC By‑SA.
Étiquettes :
39
16
juil.
2017
Programmation fonctionnelle

La version 4.05.0 du langage OCaml vient d’être publiée, le 13 juillet 2017 ; quelque mois après la sortie de la version 4.04.0, annoncée le 4 novembre 2016. OCaml est un langage fonctionnel de la famille des langages ML (dont font partie SML et F#). Il s’agit d’un langage fonctionnel multi‐paradigme fortement typé qui permet de mélanger librement les paradigmes fonctionnel, impératif et objet.

LOGO

Il s’agit des deux premières versions après le passage à un cycle court de développement (6 mois). Elles contiennent assez peu de changements majeurs et peuvent être considérées comme des versions de maturation, en particulier pour la nouvelle phase d’optimisation Flambda introduite dans la version 4.03.

On note cependant l’intégration de deux nouveaux outils dans le compilateur : un profileur de mémoire et un fuzzer ; mais aussi quelques améliorations du langage et de la bibliothèque standard. Pas mal de changements ont aussi eu lieu dans les entrailles du compilateur et n’ont pas encore débouché sur des changements visibles à la surface du langage.

Une des nouveautés les plus surprenantes de ces cycles de développement est probablement l’apparition d’une nouvelle syntaxe alternative à OCaml, nommé Reason(ml), sous l’impulsion d’une équipe de Facebook.

Qui est le coupable ? Le processeur ! Retour sur un bogue important des SkyLake & Kaby Lake Intel

Posté par  . Édité par bubar🦥, Benoît Sibaud, Davy Defaud, ZeroHeure, Nils Ratusznik et patrick_g. Modéré par Benoît Sibaud. Licence CC By‑SA.
42
6
juil.
2017
Matériel

Certains d’entre vous ont peut‐être vu passer l’information : les derniers processeurs Intel des familles Skylake et Kaby Lake sont victimes d’un bogue lorsque l’hyper‐threading est activé. On trouve par exemple un article sur Ars Technica, et Debian propose des instructions détaillées pour corriger le problème en mettant à jour le microcode (firmware) du processeur.

Cette dépêche propose revenir sur les événements qui ont mené à la découverte du problème. Xavier Leroy le décrit en détail dans un article sur le blog de l’équipe Gallium, dont je proposerai un résumé pour les lecteurs francophones.