Bonjour,
Comme le message est sur la liste publique, je me permet d'apporter quelques éléments.
J'ai déjà développé une petite interface type horizon artificiel (simplifié) pour de la simulation "temps réel", mais en Objectworks (ancêtre de VisualWorks), pas en Squeak. Toutefois, comme c'est il y a plus de 10 ans et que ça marchait déjà avec les machines de l'époque, je ne vois pas pourquoi ce serait impossible en Squeak aujourd'hui, même si les performances pures sont un peu en dessous.
La simulation était externe (C/Fortran/Ada mais code généré depuis Smalltalk) pour plusieurs raisons: - efficacité des calculs (Smalltalk n'est pas performant en calcul scalaire car chaque opération en virgule flottante crée un objet... en calcul vectoriel avec des primitives cela s'apparente plus à Matlab en un peu plus rapide) - éviter d'accumuler des objets non détruits à court terme (les résultats de simulation) et éviter ainsi les garbage collect.
En effet, le garbage collect de Visualworks se fait en plusieurs compartiments: dans un premier temps, seul l'espace réservé aux objets récemment créés est nettoyé ce qui est peu coûteux. Je suppose que la même chose existe en Squeak, mais là, je n'ai pas vérifié.
Donc, si il n'y a que de l'affichage, les créations devraient être limitées à quelques nombres flottants ou fractions et quelques objets géométriques qui vont mourir une fois affichés, et le code devrait tourner sans problème en temps réel (à l'époque, on s'était contenté de 10 Hz, mais c'était déjà assez fluide).
Maintenant, garantir qu'il n'y aura jamais de garbage collect pour passer des certifications, ça me parait beaucoup plus difficile... Mais pas impossible.
Je joins ce lien un peu obsolète de mon ancien employeur: http://jpcornu.free.fr/
Bonne programmation
Nicolas
Le Mercredi 22 Mars 2006 17:18, Serge Stinckwich a écrit :
Le 22 mars 06 à 16:55, Pierre SARRAIL a écrit :
Bonjour,
Bonjour,
...
- gère t'il bien le temps réel (délai entre le moment où
l’information est reçue par l'application et ou elle est affichée)?
Je ne suis pas un spécialiste du temps réél, mais je sais que Smalltalk est utilisé pour certains jeux vidéos où j'imagine les aspects temps-réels sont importants. Après cela dépend de la version de Smalltalk que tu utilise. Squeak est open-source mais n'est pas renommé pour sa vitesse d'exécution, bien qu'il existe des projets comme OpenCroquet, un environnement 3D complet écrit en Squeak. Voir http://www.opencroquet.org/ VisualWorks ou Dolphin sont plus rapides je pense.
- est il régulier dans ses performances (le garbage collector prend
un temps d'exécution non déterministe, est il paramétrable)?
Je n'ai pas de réponses à cela. Je pense que quelqu'un de la liste pourra te répondre.
- est il bien pour faire des interfaces 2D?
En Squeak, il existe une interface dite Morphique inspiré de Self, mais qui est assez mal foutu. Elle est en cours de reconception dans le cadre du projet Tweak : http://tweak.impara.de/ En VW, il y a des interfaces classiques qui s'inspire des widgets natives de la machine.