Ma boîte à outils ed(1) : Plongeon au cœur des implémentations ed(1)

2025-09-24

Artyom Bologov, un fervent partisan autoproclamé d'ed(1), partage sa collection d'implémentations et de scripts ed(1). Il utilise ed(1) de manière intensive comme éditeur Git, éditeur sudo et même générateur de sites statiques. Sa boîte à outils comprend GNU ed, OpenBSD ed (oed), une version modernisée appelée wed(1), un aed(1) plus convivial et xed(1) pour les scripts. Ces outils pallient les limites d'ed(1), comme le manque de prise en charge des scripts et le manque d'ergonomie, tout en préservant la portabilité sur différents systèmes. Il a même créé des implémentations d'ed(1) en Brainfuck, BASIC et Modal, preuve de son dévouement. Bologov conclut en exhortant les lecteurs à adopter et à aimer ed(1).

Lire plus
Développement

Contre les REPL Lisp personnalisés : adoptez les REPL natifs et les outils pratiques

2025-08-20

L'auteur critique les REPL Lisp personnalisés (comme CIEL), affirmant qu'ils sacrifient la puissance et la capacité de personnalisation des REPL natifs, tels que les commandes natives du REPL, les débogueurs d'implémentation et la possibilité de personnaliser à l'aide des API d'implémentation. L'article détaille comment améliorer les REPL natifs à l'aide d'outils tels que la bibliothèque Trivial Toplevel et rlwrap, couvrant les invites personnalisées, les commandes, les macros de lecteur et la gestion des dépendances avec ASDF. L'auteur préconise l'utilisation de REPL natifs associés à des outils pratiques pour un environnement de développement Lisp hautement efficace et personnalisé, plutôt que de dépendre de REPL personnalisés « tout inclus ».

Lire plus
Développement

Utiliser ed(1) comme générateur de site statique : une expérience originale

2025-05-31

Artyom Bologov partage son expérience inhabituelle de création d'un site web statique à l'aide de l'ancien éditeur de texte ed(1). Il a essayé plusieurs méthodes, de Lisp au préprocesseur C, pour finalement adopter ed(1) comme générateur de site statique. Bien qu'ed(1) présente des limitations, notamment l'absence de fonction d'inclusion de fichiers, sa flexibilité permet une syntaxe personnalisée et le traitement d'anciens formats de préprocesseur. Il utilise des scripts ed(1) pour le prétraitement et la conversion de formats, prenant en charge plusieurs formats de sortie (txt, gmi, 7, tex, etc.). Même s'il ne s'agit pas d'une pratique recommandée, l'article met en lumière le potentiel inattendu d'ed(1) et l'approche unique de l'auteur en matière de traitement de texte.

Lire plus

La vérité dérangeante sur l'indentation Lisp

2025-01-19

Les programmeurs Lisp débattent depuis longtemps du meilleur style d'indentation. Cet article explore différentes approches, notamment l'absence d'indentation, l'indentation alignée sur les fonctions, l'indentation de remplissage d'espace et l'indentation de macro "malade" controversée de l'auteur. L'indentation alignée sur les fonctions devient difficile à gérer avec un imbriquement profond, tandis que l'indentation de remplissage d'espace, bien qu'efficace, est insuffisante dans les cas extrêmes. L'auteur préconise un style de macro "malade", qui, malgré son caractère non conventionnel, préserve la lisibilité dans le code profondément imbriqué et fonctionne bien avec la plupart des outils d'indentation. Les lecteurs sont invités à partager leurs styles préférés.

Lire plus
Développement style de codage