C'est quoi comme langage?
Bin du Python
"Dieu est mort" · "Si le téléchargement c’est du vol, Linux c’est de la prostitution."
Ok j'ai compris, c'est le Ri+1 qui me posait problème, j'interprétais mentalement que la condition ne serait pas validé si l'index n'existait pas et qu'il passerait à la ligne suivante. J'ai manqué de logique sur ce coup. Merci bien !
Jamais eu l'occasion d'en faire.
Le seul intérêt que j'y verrais, ca serait a minima de faire du prototypage VTK/ITK en mode script, avec moins de code à gérer et pas de compilation.
Dernière modification par GrandFather ; 25/11/2012 à 12h23.
C'est un langage très sympathique à utiliser, simple, puissant et relativement rapide. Pour faire du scipting ou des outils/applications qui n'ont pas besoin de performances critiques ou d'architectures complexes, c'est très adapté.
Ou encore pour des scripts embarqués dans une application plus grosse, pour permettre de l'étendre sans avoir à tout recompiler par exemple. Les interfaces Python/C sont très facile à écrire je crois bien.
Ca remplace aussi très bien les scripts shells, tout en étant beaucoup plus lisible et maintenable.
Pour le web aussi ça s'utilise bien.
"Dieu est mort" · "Si le téléchargement c’est du vol, Linux c’est de la prostitution."
Et on peut convertir du code en python en code C avec cython, mais je n’ai pas réussi à compiler ce dernier.
une balle, un imp (Newstuff #491, Edge, Duke it out in Doom, John Romero, DoomeD again)
Canard zizique : q 4, c, d, c, g, n , t-s, l, d, s, r, t, d, s, c, jv, c, g, b, p, b, m, c, 8 b, a, a-g, b, BOF, BOJV, c, c, c, c, e, e 80, e b, é, e, f, f, f, h r, i, J, j, m-u, m, m s, n, o, p, p-r, p, r, r r, r, r p, s, s d, t, t
Canard lecture
J'en avais déjà parlé ici il me semble, mais une fois j'ai postulé dans une boite qui avait développé une passerelle sécurisée :
En gros, chaque fois qu'un intervenant avait besoin de se connecter chez un client, on lui attribuait un login/mdp, et l'ensemble de sa session (rdp ou ssh) était enregistrée (vidéo ou texte).
L'ensemble du truc était développé en Python, ce qui prouve que le langage peut aller plutôt loin.
http://llvm.org/devmtg/2012-11/Gregor-Modules.pdf
C'est loin d'être nouveau cette idée de modules, mais ça fait plaisir de voir qu'ils bossent dessus.
Rust fanboy
Ho, bonjour monsieur D.
C'est pour quand sinon ?
"Dieu est mort" · "Si le téléchargement c’est du vol, Linux c’est de la prostitution."
Peut être pour 2017.
Avec un peu de chance on codera les ordinateurs quantiques qui iront chercher des traces de vie près d'Alpha Centauri avec les modules C++.
---------- Post added at 21h50 ---------- Previous post was at 21h44 ----------
En fait le plus gros problème à résoudre, mis à part la transition sans->avec modules, c'est le format des fichiers-interface générés par le compilateur qui lit un module (c'est à dire l'équivalent des .h).
Faut-il que ce soit un format standardisé (ce qui permettrait de créer des outils pour les lire comme doxygen par exemple) ? Faut-il que ce soit implementation-defined (ce qui permettrait des optimisations) ? Un mélange des deux ?
Rust fanboy
Tiens révélation du jour.
En C++, au lieu d'écrire :
On peut écrire :Code:if (i == 0) throw std::logic_error("Division par zero"); return 5 / i;
Quand l'opérateur ternaire contient un throw, le type de retour est égal au type de l'autre membre, et le throw est ignoré dans tout ce qui est type.Code:return (i == 0) ? throw std::logic_error("Division par zero") : 5 / i;
Rust fanboy
C'est pas tellement plus clair pour la lecture par contre...
"Dieu est mort" · "Si le téléchargement c’est du vol, Linux c’est de la prostitution."
Joli, je connaissais pas. Ça a l'air de correspondre avec le typage des exceptions dans les faux langages fonctionnels comme Ocaml et SML…
Mais alors, que vaut decltype(throw 42) ?
Ca vaut "erreur de compilation".
Dans l'exemple plus haut, la règle c'est que si l'un des membres est un throw, il est simplement ignoré pour tout ce qui est type. Il n'y a pas d'histoire de type intermédiaire ou que sais-je.
Simplement decltype(a ? throw 42 : b) est égal à decltype(b)
Rust fanboy
Mais alors?Code:decltype(a ? throw 42 : throw "E");
"Dieu est mort" · "Si le téléchargement c’est du vol, Linux c’est de la prostitution."
Mais alors, est-ce que :
est équivalent à :Code:a ? throw 42 : b
:crosstopic:Code:a && throw 42 || b
Rust fanboy
C'est pas du code mais le prof recommande Architecture de l'ordinateur de Andrew Tanenbaum. Sauf que le livre est épuisé et que les génies vendeurs d'occasions le font à un prix totalement délirant. Un bon plan pour en trouver un exemplaire, une date de réédition prochaine ou bien un équivalent à me conseiller ?
Trouve-le en bibliothèque ?
une balle, un imp (Newstuff #491, Edge, Duke it out in Doom, John Romero, DoomeD again)
Canard zizique : q 4, c, d, c, g, n , t-s, l, d, s, r, t, d, s, c, jv, c, g, b, p, b, m, c, 8 b, a, a-g, b, BOF, BOJV, c, c, c, c, e, e 80, e b, é, e, f, f, f, h r, i, J, j, m-u, m, m s, n, o, p, p-r, p, r, r r, r, r p, s, s d, t, t
Canard lecture
Autrement, t'as la version anglaise.
Vu que la dernière édition (6eme) vient de sortir cet été, aucune idée de la date de sortie d'une nouvelle version française.
Mouais, perso la bible j'évite.
"Dieu est mort" · "Si le téléchargement c’est du vol, Linux c’est de la prostitution."
Merci rOut, la vérité, n'est pas dans un seul livre, mais dans l'idée que tu t'en fait, cela dit, ça reste une bonne lecture.
Bon, sinon personne pour parler de code dégueulasse?
Maintenant que le Javascript est dans un topic à part, on ne peut plus
"Dieu est mort" · "Si le téléchargement c’est du vol, Linux c’est de la prostitution."
Rust fanboy