--NoDr - YGO--

7/19/2005

Home page Factor en Français

Classé dans: — @ 2:31 pm

Factor - Un langage de programmation dynamique

Introduction

Factor est un langage simple qui encourage la programmation facile à écrire, à tester et avec une forte ré-utisabilité.
Les influences principales de Factor sont:

  • Joy pour la syntaxe
  • Forth pour les techniques d’implémentations
  • et Lisp pour le modèle objet.

Les sources sont sous licences ‘BSD-style license’. Partagez les librement.

Guides de conception

Réflexivité
Factor est défini au maximun en lui même. Chaque couche est inspectable et modifiable en cours d’exécution. Chaque élément de Factor, contient son propre modèle sémantique et peut être interrogé sur son type et son contenu.
Metaprogrammation
Un puissant META modèle offre une totale dualité entre code et données. Le modèle objet et les outils eux-mêmes (interpreteur, compilateur, assembleur, inspecteurs, pas à pas, profilers) sont construits intégralement en Factor. La couche C et ses primitives est extrêment réduite et certaines primitives sont rétro-compilées en utilisant l’assembleur interne de Factor pour obtenir un maximum de performances (tag/untag et calcul sur les entiers courts par exemple).
Transparence
Factor n’est pas une boîte noire mais une superbe boîte à outils dans laquelle rien n’est masqué au développeur. Ce dernier est encouragé au contraire à modeler son outil à son besoin
Simplicité
Tout est maintenu aussi simple que possible. L’objectif est de conserver un système suffisament petit pour qu’un seul individu puisse le comprendre et le maintenir sans difficultés.

Concepts clés

  • Fonctionne sur FreeBSD, Linux, Mac OS X et Windows.
  • Compilateur code natif pour x86 et PowerPC.
  • ‘Garbage collecteur’ générationnel.
  • Syntaxe minimaliste postfixé et ‘parser’ extensible.
  • Persistance orthogonale avec sauvegarde de l’image mémoire.
  • Polymorphisme des prédicats par ‘dispatch’ dynamique .
  • Support pour la délegation de type ‘design patterns’.
  • Structure de données complète (linked lists, vecteurs, hashtables,…).
  • Types de données utilisateur nommés tuples.
  • Riche librairie mathématique complète, intégrant une tour complète des nombres (entiers (court et long “big"), décimaux, frationnaires, complexes).
  • ‘Continuations’.
  • ‘Threads” coopératifs’.
  • Profileurs, trace, pas à pas, inspecteurs.
  • Calcul d’inférence statique de la PILE.
  • serveur HTTP orienté ‘continuation’.
  • Interface librairies dynamique C (DLL-SO).
  • liens vers les librairies graphiques SDL et OpenGL.
  • Focus sur le développement interactif et orienté tests.
  • Un plugin pour jEdit Un éditeur de texte offrant un puissant environnement de développement.

Factor est developpé par Slava Pestov.

OBJECTIFS

Factor n’a pas encore atteint la version 1.0. et les objectifs pour cette version ne sont pas encore totalement définis
mais voici quelques idées:

  • Interface Utilisateur Graphique (en cours d’élaboration)
  • Editeur structurel
  • Compilateur encore plus optimisé
  • Assembleur pour le compilateurs vers x86-64 et ARM
  • Aide hypertextelle en ligne
  • XML, XML-RPC l
  • Plus de math. (intégration, polynomes, graphes 2d et 3d )
  • Un super outil de développement intégré utilisant l’aspect dynamique et hautement réflexif de Factor

Les parties de cette page ont été reprises et traduites depuis la home page FACTOR avec le consentement de Slava Pestov

Mon avis personnel

Je vois en Factor un environnement offrant un potentiel assez exceptionnel. A mon humble avis Factor pourrait finir par faire aussi bien que du C tout en offrant un confort de développement sans égal. Ecriture et mise au point dans une boucle interprétative (REPL) avec possibilité d’écriture de partie sensible pouvant aller de la compilation jusqu’a l’assembleur. Le tout dans un système extrêmement souple et dynamique. Un vrai régal pour les développeurs de jeux vidéo et autre Intelligence Artificielle Auto-Adaptative.
Les seuls manques à ce jour sont les contributeurs nécessaires à la montée en charge des interfaces vers les librairies C et à la réalisation de programmes complets.

Alors passionnés et autres amateurs de tout poil : A VOS CLAVIERS

Database error: [Table 'yvan_godin.wp_comments' doesn't exist]
SELECT * FROM wp_comments WHERE comment_post_ID = '7' AND comment_approved = '1' ORDER BY comment_date

Commentaires

Pas encore de commentaire

Flux RSS pour les commentaires sur cet article.

Poster un commentaire

Désolé, le formulaire de commentaire est fermé pour le moment.

Réalisé avec WordPress  visitors