Comments on TP en Sage, et webapplications

DM (2009-10-22T16:03:12Z)

J'ai récemment développé des choses en Sage. (David: je te raconterai cela à l'occasion, je pense que cela t'amusera.)

Du point de vue programmation, c'est bien plus clean que Mathematica: il y a notamment une séparation entre les variables du programme et les variables symboliques (je veux dire, les "variables muettes" ou les "inconnues" des formules mathématiques). J'apprécie également le fait de pouvoir écrire des fichiers et les relire avec la puissance et les fonctionnalités de Python.

Je suis cependant en train de recoder tout ça en C++ (avec Boost uBlas et d'autres bibliothèques).

Les raisons? Sage est très lent pour des opérations qui ne devraient pas l'être, par exemple assembler une matrice très creuse à partir de sous-matrices creuses. Notamment, le constructeur de matrices creuses qui prend en argument une liste de vecteurs creux est en temps quadratique (!).

Une autre source de difficultés: Sage fonctionne en grande par agglutination de fonctions importées d'autres logiciels, par exemple GP/Pari ou Maxima. Parfois, l'aller et retour des informations se passe mal: ainsi, on peut récupérer ce qui ressemble à un vecteur de rationnels, mais que Python/Sage ne considère pas comme tel, et je ne trouve pas comment le reconvertir.

Conscrit neuneu (2009-10-22T12:29:04Z)

"le copier-coller a des ratées"

Je pense qu'il y a une faute d'orthographe.

rjolly (2009-10-22T11:11:05Z)

Je ne suis donc pas le seul à penser que les applications web sont idiotes, un dernier exemple de cette autonomie de la technique qui fait choisir de mauvaises solutions pour des raisons autres que techniques. Le concept d'applet, qui remonte aux débuts de Java, me semble bien meilleur, ou mieux : le démarrage web (java web start) qui n'a toujours pas décollé à cause de la guerre historique entre Sun et Microsoft, qui a fait que Java n'est pas installé par défaut dans Internet Explorer et toujours difficile à installer manuellement, par rapport à Flash par exemple. Malgré ça, je développe pour ma part un logiciel de calcul symbolique à démarrage web, voir lien ci-dessus. Il fonctionne avec différents moteurs de calcul, dont SymPy, qui était pressenti comme remplacement pour le coeur de Sage, si ça peut en intéresser ici…

yogsototh (2009-10-22T07:36:43Z)

Pour les applications web qui soient aussi agréable a utiliser que des applications dites lourdes. C'est je crois, ce qu'envisage Google avec son futur Chrome OS.

Le mieux qu'on puisse faire pour se rapprocher a me semble-t-il été atteint par 280north qui ont créé un "Framework" permettant de programmer des applications web de façon très similaire à la création d'applications lourdes.

Il y a un exemple de "powerpoint" en ligne que je trouve très impressionnant : http://280slides.com

Seulement en javascript et sans flash.

Fork (2009-10-22T05:48:38Z)

Ce qui est cool avec les logiciels libres, c'est que les élèves peuvent les installer légalement sur leurs machines perso. Inversement, un projet entier sous un logiciel très cher, c'est très pénible.

Je me retire sur cette évidence ;)


You can post a comment using the following fields:
Name or nick (mandatory):
Web site URL (optional):
Email address (optional, will not appear):
Identifier phrase (optional, see below):
Attempt to remember the values above?
The comment itself (mandatory):

Optional message for moderator (hidden to others):

Spam protection: please enter below the following signs in reverse order: bbfc40


Recent comments