--NoDr - YGO--

7/31/2005

REPOS

Classé dans: — @ 7:43 pm

For English reader please see this URL

Non ce n’est pas l’heure de la sieste ;-)
Mais la nouvelle Beta du Repository of Erlang-Projects qui viens d’être libéré par Mickaël Rémond.

Repos est une collection de logiciels prêts à fonctionner en environnement Erlang. Repos est livré sous la forme d’une image ISO permettant la gravure d’un CD contenant l’ensemble des éléments nécessaires à la mise en oeuvre des programmes suivants:

  • Repos 1.3 est désormais basé sur Erlang/OTP R10B-6.
  • ejabberd un serveur ‘jabber’ qui passe en version 0.9.1
  • J-EAI 1.0 beta 5
  • Dialyzer un analyseur de code statique en version 1.3
  • Yaws un serveur HTTP hautes performances est maintenant inclus en version 1.55
  • Tsunami, un outil de tests de charge multiprotocoles (HTTP, HTTPS, Jabber, SOAP) est en version 1.0.3
  • Support MacOSX Tiger
  • Bluetail Ticket Tracker un outil de gestion de ‘bug’ a été ajouté
  • Jabberlang 0.1 a été ajouté
  • Wrapper OpenSSH
  • Wing3D un modeleur 3D écrit en Erlang et SDL
  • EDSL un wrapper vers la librairie SDL

Idéal pour tous ceux qui souhaitent tester Erlang et les logiciels associés sans perdre de temps à compiler pour leur plate-forme préférée.

7/26/2005

Erlang on Factor ?

Classé dans: — @ 7:53 am

Great, Chris Double is trying to put some of the Erlang concepts on Factor like asynchronous lite process, supervisor and distrubution.
Except the yielding model, coopérative, this could be a very good thing ! .

Erlang is a great, instrustrial strengh, environment but, I see Factor as a more general multi purpose language. The pure fonctionnal of Erlang is better for secure software but is not adapt at all for some task such as multimedia or imaging.

With Factor you can write code at interpreter level, compile some sensible part and even go down to internal assembly level if the speed really matter. The stack oriented permet to code in imperative level, but the concatenative part is not so far of functionnal.
Erlang is only well adapt to network oriented back office program but very poor for heavy graphic end user software.
Factor internals are more understantable than Erlang. The Erlang compiler is very complex and heavy.

I think there is a real potential in Factor, even if not finished yet
( Factor essentials In french )

NB: comment about Erlang and other language concurrency, including Factor, on 3pBlog from Mickaël REMOND

7/25/2005

Electronic CAD

Classé dans: — @ 10:15 pm

Dans la série Pub et Conseils:
FR
Pour tous ceux qui cherchent un excellent outils de CAO électronique libre et qui plus est, gratuit, je conseille sans réserve
KICAD. Probablement un des meilleurs outils libre dédié à la CAO électronique.

EN
If you are looking for a electonic CAD, my advise KICAD. Probably one of the best free cad I have seen.

7/20/2005

HYPER CUBE COMPUTER

Classé dans: — @ 3:06 pm

PLEASE, don’t dream , this is ONLY a concept and I don’t do it because I am not skilled enough

And the fact is it seem this concept is not a new one :-( somedody pointed this to me

Why CUBE

because I see it as array of directly linked processors. Something like of old good transputer. But with 6 links per processor in order to build an arry like a 3D cube. On contrary of transputer I see processor communicating through asynchronous messages queues. In this domains I fully agree with Joe Armstrong point of view .
Word is based on asynchronous messages exchanged between entity. Each entity is responsible for its traitment and can eventually answer by mean of other asynchronous message.

Why

Mainly ROBOTICS :
If you want to make a powerfull Adaptative Artificial Intelligence Sytem what do you need ?

  • very pliant language able to change itself while running

    >> Factor can do that
  • very hight asynchronous parrallel system

    >> our brain seem to be parallel but unfortunatly Factor is not yet
    Need same lite asynchronous and distributed process we can find in Erlang
  • hardware specialised to fullfill previous request

    >> FPGA is our friend
    here speed is not the matter but number is

The concept ( my dream)

FPGA
Moderm FPGA such as XILINX one allow millions of cells on some low coast hardware. So with some existing sales board we should be able to build slow prototype. Board like XSA-3S1000 from XESS compagny should be enougth to build a dual Stack machine core for tests only

Hardware garbage collector and memory cache
One part of the board should be use to built the needed memory cache accès and hardware garbage collector based on Factor CELLS basis. Ancient Lisp machine hardware already do something like. This is not necessary trivial but probably doable.

Direct Asynchronous Link
Like the ‘lod good transputer’ the hyper cube are directly connected, each one to other, through a direct harware fast link. But on difference with transputer, the link should be asynchronous following the Erlang distributed processes. With 6 link we can build a kinf of cube that can extend to infinite.

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

Pathétique

Classé dans: — @ 1:10 pm

Et voila que Philips s’y met

Après le chien AIBO de Sony le chat iCat de Philips

Le chat permet de représenter des expressions faciales !!!

Eh ben ils ont encore du boulot quand on voit ce que certains autres font :-)

Androide PKD

hansonrobotics

Codage du bazar avec OPPR un langage de scripting et DML des composants C++
Ca serait vraiment cool qu’un jour on oublie ce C++ pour utiliser des langages plus dynamiques pour ce type de problèmes. Je pense qu’un FACTOR avec des primitives en C ou en assembleur seraient très largement mieux. Et ne venez pas me dire que mes propos sont biaisés ;-).

7/18/2005

Factor first lines of code

Classé dans: — @ 9:56 pm

The better way to learn new language is writing code so I do it.

This is the premices of a dates/calendar lib.
Actually it is not finished yet, but some part seem to work. It is not tested at all, so, probably buggy.
I am not sure the code is the clever one because I am still not confident with Factor and also because I am pragmatic … if it works fine … let’s go … I leave the subjective beauty of the code for purist.

Uncompress this CALENDAR in Factor/library and go

  • TEST
    new-calendar .s  (word for today <calendar> )
    << calendar [ ] 1121715062216 12982 70262 2005 199 7 18 19 31 2 “fr” 0 “fr” >>
    dup print-fmt .
    “18/7/2005 19:31″
    dup 2 swap settimezone
    dup print-fmt-fr-full .
    “Lundi 18/7/2005 21:31:2 GMT:2″

COMMENT and QUERY
The <calendar> is immutable ( except the fact TUPLE is not immutable .. I have to learn deeper this)
- The millisec field is ALWAYS express in GMT 0.
- Other fields are the externals representation of the date according the timelag
- settimezone create new calendar with same millisec but different representation (don’t know if it is a good idea)

  • DATES
    primitives for dates computations
  • CALENDAR
    calendar classes
  • LOCALES
    printer and parser (not yet done) for differents locales

I wonder if TUPLE should not have something like :R or :RW modifyer to change the built of the words associated
( :R doesn’t create mutator for field while :RW does and default :R)

I hope I’ll finish calendar soon

7/13/2005

Factor thoughts and dreams

Classé dans: — @ 9:52 am

Factor is a new programming language from Slava Pestov combining some forth, lisp and joy concepts in a great portable environment. Very good key features and a lot of good ideas .. I really like it.

But unfortunatly it is a bit too young to be really usable and there is still some important lack. Some reflexions on this below

  • FFI :

    still the lack of callback (should be usefull for some external lib such as freeGLUT ;-)
  • External LIB:

    I know Slava dislike the idea of external lib but it’s a term of time to market. Re write most of the things in Factor should take too long and use some existing library may be a first good approch awating for anything else.

    • XML:
      libXML2 & libXLST ?
    • SSL:
      open SSL ?
    • IMAGING:
      libpgn libtiif libjpg libmpeg ?
    • PDF
      ??? pdf writer/ exporter
    • ZIP-TGZ
      ??? libZIP
  • GUI

    interesting job but very ugly presentation … need a lot of “graphics” improvement :-) probably next step ?
  • PRINTING Lib.

    most of language makers forget this very important area
  • Asynchonous pre-emptive lite process (like Erlang one)

    - NO EVIL SHARED MEMORY
    - NO EVIL LOCK etc… (I fully agree with this post of Joe Armstrong main author of Erlang)
    but instead synchronous lite process with QUEUE MESSAGES paradigm, LOW MEMORY OVERHEAD, FAST SWITCHING context, like the Erlang one in a Pre-Emptive mode. Erlang can deal with hundred of thousand lite process exploding most of the OS thread system. I am quite sure Factor can do the same.
  • DISTRIBUTED

    distributed Factor at interpretavive level (REPL) between multiple running VM through a SSL connection (should not be too complex re-using some trick of JEDIT)
  • WINDOWS services:

    Shoult be great to have Factor runing as a ’services’ on windows
  • MODULES:

    Partial load/unload of image part ???? plateform independant

My ultimate dream: Factor runing on MAEMO with ARM back end compiler. I plan to buy the NOKIA 770 by the end of this year and I really like to use it for Factor coding pending my long (3H) daily transport in the train to go to work. Factor need few sign for write code so it should be possible even with the tactile keyboard.

I also wonder if Factor permit easilly to write some WORD code using a direct virtual assembly level. I have not closely look a VOP and the doc seem limitated in this area, but it should be great to look closer.

7/8/2005

Premier post

Classé dans: — @ 8:00 am

Bon nous y voila
L’écriture c’est pas trop mon truc, mais je finis par céder a la mode

La bonne question maintenant c’est … qu’est ce que je vais y mettre

peut être dans un premier temps mes centres d’intérêts perso:

  • Factor

    un nouveau langage de programmation écrit par un petit jeune qui m’impressionne. Même si ce langage dans l’état actuel est inutilisable dans un contexte professionnel, il reste néamoins extrèmement intéressant. Je ne m’était pas autant passionné pour un langage depuis longtemps
  • la Robotique

    Ici sans surprise lecture de la vie artificielle régulièrement
  • l’électronique

    J’ai acheté un PIC 16F877 avec un programmateur avec pour objectif final de faire un peu de domotique (contôle du chauffage électrique). Pour la programmation du PIC j’ai fait quelques tests très satisfaisants en utilisant PICFORTH. Ceci permet d’avoir un excellent niveau de code (petit et performant) tout en restant au niveau d’un langage plus agreable que l’assembleur.

Réalisé avec WordPress  visitors