Structures de contrôle : de « goto » aux effets algébriques (7) - Xavier Leroy (2023-2024)

Enseignement 2023-2024 : Structures de contrôle : de « goto » aux effets algébriques Cours du 22 février 2024 : Pratique des effets : des exceptions aux gestionnaires d'effets Professeur : Xavier Leroy Chaire Sciences du logiciel Retrouvez les enregistrements audios et vidéos du cycle et son texte de présentation : https://www.college-de-france.fr/fr/agenda/cours/structures-de-controle-de-goto-aux-effets-algebriques Retrouvez tous les enseignements du Pr Xavier Leroy : https://www.college-de-france.fr/chaire/xavier-leroy-sciences-du-logiciel-chaire-statutaire https://www.youtube.com/playlist?list=PLtimy8tnozICbD45yhB7Ha_zIBJTIK3im Le Collège de France est une institution de recherche fondamentale dans tous les domaines de la connaissance et un lieu de diffusion du « savoir en train de se faire » ouvert à tous. Les cours, séminaires, colloques sont enregistrés puis mis à disposition du public sur le site internet du Collège de France. Découvrez toutes les ressources du Collège de France : https://www.college-de-france.fr Suivez-nous sur : Facebook : https://www.facebook.com/College.de.France Instagram : https://www.instagram.com/collegedefrance X (ex-Twitter) : https://twitter.com/cdf1530 LinkedIn : https://fr.linkedin.com/company/collègedefrance

23 Feb 2024

Collège de France - Sciences du logiciel

View Video
GPTar

21 Feb 2024

Robur Cooperative

Read Article
My Experience With Tarides at ICFP 2023!

ICFP 2024 will be upon us sooner than you might think! The call for papers closes on the 28th of February, and I wish everyone submitting…

21 Feb 2024

Tarides

Read Article
OCaml Locals Save Allocations | OCaml Unboxed

This is the fifth video in a series about OCaml’s locals. This episode demonstrates how using locals reduces garbage-collected allocations. Watch as I demonstrate how to use locals, fending off plenty of error messages along the way. View instructions to get the compiler I use in this video: https://github.com/janestreet/opam-repository/tree/with-extensions Code used in this video: https://github.com/goldfirere/janestreet-videos/blob/main/locals/05-programming-with-locals/local.ml

20 Feb 2024

Jane Street - OCaml Unboxed

View Video
OCaml Locals Save Allocations | OCaml Unboxed

This is the fifth video in a series about OCaml’s locals. This episode demonstrates how using locals reduces garbage-collected allocations. Watch as I demonstrate how to use locals, fending off plenty of error messages along the way. View instructions to get the compiler I use in this video: https://github.com/janestreet/opam-repository/tree/with-extensions Code used in this video: https://github.com/goldfirere/janestreet-videos/blob/main/locals/05-programming-with-locals/local.ml

20 Feb 2024

Jane Street - OCaml Unboxed

View Video
Introducing DBCaml, Database toolkit for OCaml

Introducing DBCaml, Database toolkit for OCaml

20 Feb 2024

Emil Privér

Read Article
Building a Connnection Pool for DBCaml on top of riot

This article talks about how I wrote the connection pool for DBCaml

19 Feb 2024

Emil Privér

Read Article
Structures de contrôle : de « goto » aux effets algébriques (6) - Xavier Leroy (2023-2024)

Enseignement 2023-2024 : Structures de contrôle : de « goto » aux effets algébriques Séminaire du 15 février 2024 : Représentations intermédiaires pour la compilation : s'affranchir du graphe de flot de contrôle Intervenante : Delphine Demange, université de Rennes Le graphe de flot de contrôle est une représentation intermédiaire classique des programmes dans les compilateurs optimisants pour les langages impératifs. Cette représentation a permis de formuler et de développer de nombreuses optimisations de programmes, des plus simples jusqu'aux plus sophistiquées. Dans sa forme originelle, le graphe de flot de contrôle présente toutefois deux inconvénients pour optimiser les programmes. D’une part, beaucoup d'analyses de programmes sont sensibles au nommage des variables du programme. D'autre part, un modèle d’exécution entièrement dirigé par le contrôle rend parfois difficile le réordonnancement des instructions. Dans cet exposé, nous nous intéresserons à des représentations intermédiaires emblématiques qui visent à pallier ces inconvénients. La première, SSA, permet d'exposer, à travers un schéma spécifique de nommage, quelques relations de dépendances entre instructions. La seconde, Sea-of-Nodes, s'appuie sur SSA et relâche certaines contraintes d'ordre d'exécution au sein de régions du graphe. Issues de travaux de recherche, elles sont aujourd'hui utilisées avec succès dans des compilateurs optimisants de référence. Nous présenterons leur modèle d'exécution respectif, ainsi que leurs propriétés sémantiques clefs dans le cadre de l'optimisation de programmes. Enfin, nous présenterons quelques enjeux actuels du domaine, où des représentations intermédiaires similaires sont utilisées pour basculer dans un modèle d'exécution dirigé par les données. Retrouvez les enregistrements audios et vidéos du cycle et son texte de présentation : https://www.college-de-france.fr/fr/agenda/seminaire/structures-de-controle-de-goto-aux-effets-algebriques Chaire Sciences du logiciel Professeur : Xavier Leroy Retrouvez tous les enseignements du Pr Xavier Leroy : https://www.college-de-france.fr/chaire/xavier-leroy-sciences-du-logiciel-chaire-statutaire https://www.youtube.com/playlist?list=PLtimy8tnozICbD45yhB7Ha_zIBJTIK3im Le Collège de France est une institution de recherche fondamentale dans tous les domaines de la connaissance et un lieu de diffusion du « savoir en train de se faire » ouvert à tous. Les cours, séminaires, colloques sont enregistrés puis mis à disposition du public sur le site internet du Collège de France. Découvrez toutes les ressources du Collège de France : https://www.college-de-france.fr Suivez-nous sur : Facebook : https://www.facebook.com/College.de.France Instagram : https://www.instagram.com/collegedefrance X (ex-Twitter) : https://twitter.com/cdf1530 LinkedIn : https://fr.linkedin.com/company/collègedefrance

17 Feb 2024

Collège de France - Sciences du logiciel

View Video
Structures de contrôle : de « goto » aux effets algébriques (6) - Xavier Leroy (2023-2024)

Enseignement 2023-2024 : Structures de contrôle : de « goto » aux effets algébriques Séminaire du 15 février 2024 : Représentations intermédiaires pour la compilation : s'affranchir du graphe de flot de contrôle Intervenante : Delphine Demange, université de Rennes Le graphe de flot de contrôle est une représentation intermédiaire classique des programmes dans les compilateurs optimisants pour les langages impératifs. Cette représentation a permis de formuler et de développer de nombreuses optimisations de programmes, des plus simples jusqu'aux plus sophistiquées. Dans sa forme originelle, le graphe de flot de contrôle présente toutefois deux inconvénients pour optimiser les programmes. D’une part, beaucoup d'analyses de programmes sont sensibles au nommage des variables du programme. D'autre part, un modèle d’exécution entièrement dirigé par le contrôle rend parfois difficile le réordonnancement des instructions. Dans cet exposé, nous nous intéresserons à des représentations intermédiaires emblématiques qui visent à pallier ces inconvénients. La première, SSA, permet d'exposer, à travers un schéma spécifique de nommage, quelques relations de dépendances entre instructions. La seconde, Sea-of-Nodes, s'appuie sur SSA et relâche certaines contraintes d'ordre d'exécution au sein de régions du graphe. Issues de travaux de recherche, elles sont aujourd'hui utilisées avec succès dans des compilateurs optimisants de référence. Nous présenterons leur modèle d'exécution respectif, ainsi que leurs propriétés sémantiques clefs dans le cadre de l'optimisation de programmes. Enfin, nous présenterons quelques enjeux actuels du domaine, où des représentations intermédiaires similaires sont utilisées pour basculer dans un modèle d'exécution dirigé par les données. Retrouvez les enregistrements audios et vidéos du cycle et son texte de présentation : https://www.college-de-france.fr/fr/agenda/seminaire/structures-de-controle-de-goto-aux-effets-algebriques Chaire Sciences du logiciel Professeur : Xavier Leroy Retrouvez tous les enseignements du Pr Xavier Leroy : https://www.college-de-france.fr/chaire/xavier-leroy-sciences-du-logiciel-chaire-statutaire https://www.youtube.com/playlist?list=PLtimy8tnozICbD45yhB7Ha_zIBJTIK3im Le Collège de France est une institution de recherche fondamentale dans tous les domaines de la connaissance et un lieu de diffusion du « savoir en train de se faire » ouvert à tous. Les cours, séminaires, colloques sont enregistrés puis mis à disposition du public sur le site internet du Collège de France. Découvrez toutes les ressources du Collège de France : https://www.college-de-france.fr Suivez-nous sur : Facebook : https://www.facebook.com/College.de.France Instagram : https://www.instagram.com/collegedefrance X (ex-Twitter) : https://twitter.com/cdf1530 LinkedIn : https://fr.linkedin.com/company/collègedefrance

17 Feb 2024

Collège de France - Sciences du logiciel

View Video