Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

Microsoft «Edit»

Et si Microsoft croyait en la ligne de commande pour tous ?
Idée étrange, mais vraie : depuis mi-mai 2025, Microsoft met à disposition un éditeur de texte minimaliste, mais fonctionnel, en ligne de commande : Edit.

On parle de quoi ?

  • Il se nomme Edit … ou pas … à vous de voir comment vous voulez le nommer (oui, c'est écrit dans le bout de documentation disponible).
  • C'est un logiciel libre - Licence MIT.
  • Il est écrit en Rust, et tient dans un binaire statique (qui fait 222 ko pour la version Linux x86_64)
  • Il est prévu pour fonctionner sous Windows, MacOS et Linux au moins sur les architectures x86_64 et ARM 64 - Les binaire Windows et Linux, pour x86_64 et ARM 64 sont directement fournis dans les versions sur GitHub (vouz utilisez MacOS … compilez vous-même)

On n'avait pas déjà Visual Studio Code (ou le Bloc-notes) ?

Le nom est clairement une référence à l'historique edit.com que l'on trouvait sous MS-DOS, et ce nouvel Edit fonctionne bien en ligne de commande (oui, j'ai testé hors d'un environnement graphique). Mais aucune version DOS (16 bits) n'est prévue, le support du 32 bits étant même une priorité secondaire.

Le but est de rester simple et léger, loin de l'éditeur à faire tout (et n'importe quoi) qu'est Visual Studio Code, mais se montre plus avancé que le spartiate Bloc-notes (Notepad) Windows.

Quelques menus simples, assez peu de fonctions, mais prévu pour être simple à aborder.
La souris est gérée, si l’environnement la prend en charge.
La gestion des codages de caractères (avec UTF-8 par défaut vraisemblablement), du type de retour à la ligne, et des fichier multiples sont des fonctions de bases.
Plusieurs localisations, dont le français, sont déjà gérées … et plusieurs autres langues peuplent déjà les Pull-Requests.
Pas de coloration syntaxique, mais la question est déjà posée (et semble faire débat).


Ce n'est qu'un nouvel éditeur de texte en CLI, on n'en manquait pas forcément, même d'assez simples d'utilisation (enfin, les personnes qui utilisent la ligne de commande le savent).
Pas le plus novateur, pas le plus abouti, pas celui qui a le plus de fonctions, … juste un de plus … Mais quand on connait la force de frappe de Microsoft, cela a piqué ma curiosité et j'ai voulu en savoir plus (et tant qu'à faire partager ce que j'ai trouvé).

Je trouve aussi amusant que Microsoft s’intéresse à un outil simple et minimaliste, en ligne de commande et destiné au plus grand public, finalement très loin des ogres de ressources gonflés à l'IA dans les discours de grands décideurs.

Commentaires : voir le flux Atom ouvrir dans le navigateur

La liberté des calculatrices graphiques ?

Les calculatrices graphiques sont de lointains dérivés des ordinateurs de poche des années 1980, dans lesquelles subsiste cette capacité native à pouvoir être programmé.
J’en serais probablement resté à mon expérience de lycéen, et l’éternel combat Casio / Texas Instrument, s’il n’y avait pas eu un virage (pas forcément bien courbe) autour de Python dans la fin des années 2010.

Entre passion de l’informatique, doux rêveur, promesse de calculatrice libre et réalité du marché… j’avais l’envie de vous partager mes quelques heures de recherches et de réflexions sur le sujet.

Sommaire

Ordinateur de poche, calculatrice et langage BASIC

Les ordinateurs de poche existent depuis les années 80 et ont fait le succès de sociétés telles que Sharp, Casio ou Psion. Ils se confondent avec les calculatrices les plus évoluées, et restent aujourd’hui les seules survivantes de ces deux mondes.

Elles sont programmables, majoritairement dans de nombreux dialectes du langage BASIC, directement sur la machine, mais aussi dans d’autres langages plus bas niveau, souvent via un ordinateur plus conventionnel.

Une évolution de rupture

Dans la fin des années 2010, deux évolutions sont poussées dans le monde des calculatrices : le « mode examen » et le besoin d’un langage plus moderne, beaucoup se tournant vers le langage Python.

C’est l’occasion pour NumWorks de se lancer dans ce marché très spécial. Deux point sont mis en avant :

  • Le langage Python comme le langage de programmation utilisateur (alors que ce n’est qu’un autre ajout pour les constructeurs historiques).
  • Un modèle « libre », qui as fait beaucoup parler de ce nouveau venu, notamment ici.

Libre - Un peu, beaucoup, à la folie, passionnément… pas du tout

La mise en application s’est vite montrée moins claire. La libération matérielle tient, à en juger par leur GitHub, à huit fichiers STL, sous licence CC-BY-NC-ND, et dont la dernière mise à jour date de 2020. Il est donc interdit d’en faire des modifications et/ou une utilisation commerciale… une liberté relative.

Le système d’exploitation, nommé epsilon, qui offre une bonne implémentation de Python, mais qui souffre de plusieurs problèmes de jeunesse, est bien disponible… mais également sous cette même licence CC-BY-NC-ND.

Omega

Critiquée pour cette différence entre le discours commercial de liberté, et la réalité de la licence, en mai 2018 elle fut finalement modifiée en CC-BY-NC-SA, autorisant donc la modification et la redistribution de versions modifiées. Il en naîtra notamment Omega un dérivé communautaire d’Epsilon, alors en version 11.

Ma petite CASIO

Dans un esprit de découverte, j’ai eu l’envie d’explorer moi-même ce nouveau monde du Python sur calculatrice. Peut-être un peu entrainé par les différentes lectures sur la calculatrice libre que je lisais un peu partout.

Cependant, l’interprétation assez personnelle de NumWorks du libre, et l’obligation de passer par leur site pour communiquer avec la calculatrice a orienté mon choix vers une Casio Graph 90E.

Pas que cette dernière soit plus libre, bien au contraire… juste qu’elle est simplement reconnue comme une clef USB pour y transférer des éléments depuis l’ordinateur et qu’elle a une communauté plus importante.

Le micro-python qui y est intégré est limité, et s’il permet de faire des choses… on voit que le constructeur s’est limité à ce qui était juste nécessaire. Ce qui limite les possibilités laissées aux utilisateurs.

J’aurais pu en rester là, et c’est même un peu ce que j’ai fait jusqu’à peu.

NumWorks - L’esprit d’ouverture… ou pas

Alors que j’explorais d’autres domaines, et que ma Casio prenait la poussière, le monde évoluait, et NumWorks en était à la 4ᵉ variante matérielle de sa calculatrice révolutionnaire.

La définition du « Libre » par l’entreprise avait elle aussi eu le temps d’évoluer.

Epsilon depuis sa version 16 du 30 novembre 2021, verrouille les calculatrices pour n’autoriser que les systèmes officiels du constructeur. Un peu à l’image des consoles de jeu, que certains hackent pour installer des homebrew ou firmware modifiés, il en devient de même pour la « calculatrice libre » : on chasse les évolutions communautaires.

Epsilon en est aujourd’hui (28 février 2025) à sa version 23… sans volonté affichée d’ouverture supplémentaire. Le dépôt GitHub n’affiche pas de licence dans ses métadonnées, mais une mention « Copyright - All rights reserved. NumWorks is a registered trademark. » figure en bas de la page de présentation.

Oméga a mis en pause son développement depuis février 2024, renvoyant vers une autre alternative Upsilon, qui ne s’installe pas mieux sur une calculatrice NumWorks verrouillée… mais quelqu’un a compilé pour la CASIO.

La magie du libre

C’est M. Bernard PARISSE qui a compilé une version d’Upsilon comme application pour la génération de CASIO que je possède. Je vous invite à en lire tous les détails sur la page de son projet.

Arrivant donc à avoir le meilleur des mondes, le travail de NumWorks, les additions de la communauté et plus de puissance supplémentaire de ce matériel.

Mais cela est conditionné par la possibilité de pouvoir faire fonctionner des applications tierces sur ces calculatrices…

Vers la fin des applications avancées

Il y a historiquement deux méthodes pour développer des applications pour ces calculatrices.

Un langage haut niveau, qui est un dialecte BASIC, une adaptation de Python, ou d’autres langages plus ou moins évolués, qui sont directement modifiables sur l’appareil (même si le clavier d’une calculatrice n’y est pas toujours optimal).

Un langage bas niveau, typiquement du C ou même de l’assembleur, édité et compilé sur un ordinateur puis transféré vers la calculatrice (même si certaines machines Sharp pouvaient se programmer en C directement sur la machine).

Et c’est un point que met en valeur Bernard PARISSE dans son argumentaire sur Upsilon pour CASIO : l’ouverture de ce constructeur aux développements tiers.

Mais voila, ce n’est pas forcément le sens que prennent les constructeurs, même chez CASIO.

Le test communautaire de la CASIO Math+, qui succède à la Graph 90E, ne permet pas ces applications tierces développées en langage de bas niveau, et la conclusion sur ce point est tout sauf optimiste.


Voila qui conclut ce petit tour dans le sous-domaine de l’informatique qu’est celui des calculatrices graphiques, même si ce n’est probablement pas ce qui vous servira dans une discussion autour de la machine à café (sauf, peut-être, si vous êtes prof de math).

Commentaires : voir le flux Atom ouvrir dans le navigateur

❌