Pharo est un langage de programmation purement orienté objet et un environnement puissant axé sur la simplicité et le retour d’information immédiat. Récemment, la version 14 a été publiée. Les améliorations de cette version de Pharo se concentre sur trois domaines principaux : la modernisation des outils de développement, la reconstruction de l’infrastructure de refactorisation et de commandes, et la modernisation de la machine virtuelle. Pharo est une implémentation multiplateforme du langage de programmation classique Smalltalk-80 et de son système d'exécution. Il repose sur la machine virtuelle (MV) OpenSmalltalk appelée Cog, qui évalue un langage de programmation dynamique, réflexif et orienté objet dont la syntaxe ressemble étroitement à celle de Smalltalk-80. Il s'agit d'un logiciel libre et open source, distribué sous une combinaison de licences MIT et Apache 2.
Pharo est fourni avec son code source compilé en une image système qui contient tous les logiciels nécessaires à son exécution. À l'instar du Smalltalk-80 original, Pharo offre plusieurs fonctionnalités de programmation en temps réel telles que la manipulation immédiate d'objets, les mises à jour en temps réel et la compilation juste à temps (JIT). L'image système comprend un environnement de développement intégré (EDI) permettant de modifier ses composants.
Pharo est un langage de programmation purement orienté objet et un environnement puissant axé sur la simplicité et le retour d’information immédiat. Récemment, la version 14 a été publiée.
Voici l'annonce de Pharo 14 :
Présentation de Pharo 14
- Un langage simple et puissant : pas de constructeurs, pas de déclaration de types, pas d’interfaces, pas de types primitifs. Et pourtant, c’est un langage puissant et élégant dont la syntaxe complète tient sur une carte postale ! Pharo repose entièrement sur les objets et les messages.
- Un environnement immersif et en temps réel : un retour immédiat à chaque étape de votre développement : développement, test, débogage. Même en environnement de production, vous ne serez plus jamais bloqué par les étapes de compilation et de déploiement !
- Une expérience de débogage exceptionnelle : l’environnement Pharo intègre un débogueur sans précédent. Il vous permet de parcourir le code pas à pas, de relancer l’exécution de méthodes, de créer des méthodes à la volée, et bien plus encore !
- Pharo vous appartient : Pharo est le fruit d’une communauté incroyable, avec plus de [X] contributeurs pour la dernière révision de la plateforme et des centaines de personnes qui contribuent en permanence avec des frameworks et des bibliothèques.
- Entièrement open source : la pile complète de Pharo est publiée sous licence MIT et disponible sur GitHub
… plus d’informations sur la page des fonctionnalités de Pharo.
Dans cette version de Pharo, nos efforts se sont concentrés sur trois domaines principaux :
- La modernisation des outils de développement. Nous avons introduit Mission Control et Pulse (qui remplace Spotter), remanié le navigateur de méthodes et réécrit le navigateur de paramètres, et regroupé Epicea et ProfStef au sein de NewTools. Cela s’inscrit dans la continuité de notre migration en cours des outils de développement vers une pile d’outils basée sur les spécifications.
- Reconstruction de l’infrastructure de refactorisation et de commandes. Les commandes de refactorisation ont été migrées vers une architecture basée sur des pilotes, derrière un registre de commandes unifié, et nous avons continué à étendre les capacités de la ligne de commande de Pharo (tests en ligne de commande, débogueur en ligne de commande et outils de script Sindarin).
- Modernisation de la machine virtuelle. Nous avons unifié la gestion des trames et de la pile, ajouté la prise en charge du JIT RISC-V, étendu la gestion de la mémoire (allocation directe dans l’« old-space » et améliorations du ramasse-miettes), perfectionné la compilation Slang/C et modernisé l’infrastructure de compilation multiplateforme.
À noter : à partir de cette version, nous avons déplacé notre calendrier de publication du printemps (mars-mai) à l’automne (septembre-novembre). Pharo 14 est la première version publiée selon ce nouveau calendrier.
Quelques points forts de cette version exceptionnelle :
Points forts
Outils
- Introduction de Mission Control
- Navigateur de méthodes nouveau/retravaillé
- Réécriture du navigateur de paramètres et passage au mode par défaut
- Migration d’Epicea vers NewTools
- Migration de ProfStef vers NewTools
- Introduction de Pulse (qui remplace Spotter)
- Intégration de TestRunner et tests en ligne de commande
- Corrections apportées à Calypso
- Travaux sur Cavrois et le profil des fenêtres
- Améliorations apportées au navigateur de fichiers, au Finder et à Transcript
Système
- Migration et registre des commandes de refactorisation
- Extensions avec portée et sémantique des sélecteurs
- Nettoyage des blocs et comportement du débogueur/de l’évaluation
- Correctitude de ClassBuilder, des traits et des superclasses
- Scission de l’API du compilateur et installation des méthodes
- Porteurs de valeurs UnifiedFFI, FFIMethod, rappels et réinitialisations du bootstrap
- Débogueur en ligne de commande
- Nettoyage du débogueur et du modèle client
- Modularisation des paquets/lignes de base et nettoyage des dépendances du bootstrap
- Réduction des dépendances de Morphic / UIManager
- Corrections concernant FastTable, le texte, les graphiques, Zinc et Zodiac
- Outils de script Sindarin
- Travaux sur l’éditeur de code et le présentateur de code
- Comportement des listes, des arborescences et du filtrage
- Comportement des boîtes de dialogue, des fenêtres et des éléments modaux
- Améliorations et nettoyage des actions/commandes
- Corrections du backend et de la mise en page de Morphic
Machine virtuelle
- Améliorations de l’unification des cadres et de la gestion de la pile, permettant un nettoyage substantiel de l’interpréteur et du moteur d’exécution
- Prise en charge du JIT RISC-V, élargissant la couverture des plateformes et assurant la pérennité du développement de la machine virtuelle
- Nouvelles capacités de gestion de la mémoire, notamment l’allocation directe dans l’« old space » et de nombreuses améliorations du ramasse-miettes (GC) et de l’allocation
- Travaux approfondis sur le compilateur et la traduction Slang/C, avec de nombreuses corrections de bogues, de nouveaux tests et des outils d’inspection améliorés
- Modernisation de la plateforme et du processus de compilation, notamment des mises à jour SDL, une amélioration de l’intégration continue (CI), la prise en charge de la compilation croisée et la mise à jour des dépendances tierces
- Efforts de nettoyage et de refactorisation à grande échelle couvrant la machine virtuelle, l’interpréteur, Cogit, les PIC et l’infrastructure
Source : Annonce de Pharo 14
Et vous ?
Pensez-vous que cette annonce est crédible ou pertinente ?
Quel est votre avis sur le sujet ?Voir aussi :
La version 11 de Pharo, le langage de programmation et environnement d'exécution purement orienté objet, est disponible, avec plusieurs améliorations au niveau de la convivialité et de la rapidité
La POO n'est pas meilleure que la programmation fonctionnelle et vice versa, d'après Dave Farley, d'avis que c'est au programmeur de choisir le paradigme qui convient le mieux au problème à résoudre
Python reste numéro 1, R gagne en popularité et atteint son meilleur classement historique avec la 8e place, Java a pris de l'élan avec Java 26, tandis que MATLAB et SAS sont les grands perdants, selon TIOBE
Vous avez lu gratuitement 7 743 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.