On Tue, 29 Jun 2004 16:43:44 +0200, "Mickael Pointier" :
Ca si c'est pas du code automatiquement généré
Uh ? Meuh non, je l'ai tapé à la main. C'est comme ça que je programme d'habitude, c'est pour ça que ça va pas très vite...
He he... Presque 400 lignes de PHP, tout de même, pour arriver à ça ;-)
J'aimerai voir la tronche du code une fois compilé =)
Je peux t'envoyer l'assembleur généré par BC++, si tu veux, mais c'est AMHA profondément rasoir... Plus de soixante mille lignes, quand même ! ~_~
-- schtroumpf schtroumpf
Alexandre BACQUART
Fabien LE LEZ wrote:
Bonjour,
Michel me demandait, il y a un bout de temps, de lui montrer un bloc if qui faisait plus d'une vingtaine de lignes.
Et ben, ça y est ! <http://perso.edulang.com/machin_pas_beau.zip> ;-)
Bah, tu prends un algo complexe avec uniquement des fonctions inline, ça va générer à peu près le même code. C'est ignoble, mais je reste persuadé qu'un humain est capable de faire bien pire encore :) Au moins, c'est bien indenté et ça respire ton machin_pas_beau ! L'auto-généré a du bon...
Il est clair que sans le source original, la maintenance d'un truc pareil est un pûr cauchemar de programmeur (et comme toujours, surtout pour celui qui n'en est pas l'auteur). A noter que c'est aussi une manière sadique de se rendre indispensable... il y a des vicieux !
Enfin, un bon générateur aurait plutôt mis :
} // end namespace ns_Huffman_RTF
...à la fin. Faut quand-même pas déconner avec la lisibilité :)
-- Tek
Fabien LE LEZ wrote:
Bonjour,
Michel me demandait, il y a un bout de temps, de lui montrer un bloc
if qui faisait plus d'une vingtaine de lignes.
Et ben, ça y est ! <http://perso.edulang.com/machin_pas_beau.zip> ;-)
Bah, tu prends un algo complexe avec uniquement des fonctions inline, ça
va générer à peu près le même code. C'est ignoble, mais je reste
persuadé qu'un humain est capable de faire bien pire encore :) Au moins,
c'est bien indenté et ça respire ton machin_pas_beau ! L'auto-généré a
du bon...
Il est clair que sans le source original, la maintenance d'un truc
pareil est un pûr cauchemar de programmeur (et comme toujours, surtout
pour celui qui n'en est pas l'auteur). A noter que c'est aussi une
manière sadique de se rendre indispensable... il y a des vicieux !
Enfin, un bon générateur aurait plutôt mis :
} // end namespace ns_Huffman_RTF
...à la fin. Faut quand-même pas déconner avec la lisibilité :)
Michel me demandait, il y a un bout de temps, de lui montrer un bloc if qui faisait plus d'une vingtaine de lignes.
Et ben, ça y est ! <http://perso.edulang.com/machin_pas_beau.zip> ;-)
Bah, tu prends un algo complexe avec uniquement des fonctions inline, ça va générer à peu près le même code. C'est ignoble, mais je reste persuadé qu'un humain est capable de faire bien pire encore :) Au moins, c'est bien indenté et ça respire ton machin_pas_beau ! L'auto-généré a du bon...
Il est clair que sans le source original, la maintenance d'un truc pareil est un pûr cauchemar de programmeur (et comme toujours, surtout pour celui qui n'en est pas l'auteur). A noter que c'est aussi une manière sadique de se rendre indispensable... il y a des vicieux !
Enfin, un bon générateur aurait plutôt mis :
} // end namespace ns_Huffman_RTF
...à la fin. Faut quand-même pas déconner avec la lisibilité :)
-- Tek
Fabien LE LEZ
On Tue, 29 Jun 2004 21:57:49 +0200, Alexandre BACQUART :
Au moins, c'est bien indenté et ça respire ton machin_pas_beau ! L'auto-généré a du bon...
Yep, comme c'est moi qui ai pondu le code générateur, le code généré suit mes conventions ;-)
Il est clair que sans le source original, la maintenance d'un truc pareil est un pûr cauchemar de programmeur
Effectivement, si jamais je devais faire des modifications en ayant perdu le code générateur, je referais ce dernier au lieu d'essayer de modifier le code généré. Un peu comme pour du code généré par Flex ;-)
Enfin, un bon générateur aurait plutôt mis :
} // end namespace ns_Huffman_RTF
...à la fin.
Sans doute. Mais bon, le principe étant (dans les cas simples comme celui-ci) qu'un namespace commence au début du .cpp (après les #include) et se termine sur la dernière ligne du .cpp, ça ne porte pas trop à conséquence.
Faut quand-même pas déconner avec la lisibilité :)
;-)
-- schtroumpf schtroumpf
On Tue, 29 Jun 2004 21:57:49 +0200, Alexandre BACQUART
<tek512@hotmail.com>:
Au moins,
c'est bien indenté et ça respire ton machin_pas_beau ! L'auto-généré a
du bon...
Yep, comme c'est moi qui ai pondu le code générateur, le code généré
suit mes conventions ;-)
Il est clair que sans le source original, la maintenance d'un truc
pareil est un pûr cauchemar de programmeur
Effectivement, si jamais je devais faire des modifications en ayant
perdu le code générateur, je referais ce dernier au lieu d'essayer de
modifier le code généré.
Un peu comme pour du code généré par Flex ;-)
Enfin, un bon générateur aurait plutôt mis :
} // end namespace ns_Huffman_RTF
...à la fin.
Sans doute. Mais bon, le principe étant (dans les cas simples comme
celui-ci) qu'un namespace commence au début du .cpp (après les
#include) et se termine sur la dernière ligne du .cpp, ça ne porte pas
trop à conséquence.
Faut quand-même pas déconner avec la lisibilité :)
On Tue, 29 Jun 2004 21:57:49 +0200, Alexandre BACQUART :
Au moins, c'est bien indenté et ça respire ton machin_pas_beau ! L'auto-généré a du bon...
Yep, comme c'est moi qui ai pondu le code générateur, le code généré suit mes conventions ;-)
Il est clair que sans le source original, la maintenance d'un truc pareil est un pûr cauchemar de programmeur
Effectivement, si jamais je devais faire des modifications en ayant perdu le code générateur, je referais ce dernier au lieu d'essayer de modifier le code généré. Un peu comme pour du code généré par Flex ;-)
Enfin, un bon générateur aurait plutôt mis :
} // end namespace ns_Huffman_RTF
...à la fin.
Sans doute. Mais bon, le principe étant (dans les cas simples comme celui-ci) qu'un namespace commence au début du .cpp (après les #include) et se termine sur la dernière ligne du .cpp, ça ne porte pas trop à conséquence.
Faut quand-même pas déconner avec la lisibilité :)
;-)
-- schtroumpf schtroumpf
Alexandre BACQUART
Fabien LE LEZ wrote:
On Tue, 29 Jun 2004 21:57:49 +0200, Alexandre BACQUART :
Au moins, c'est bien indenté et ça respire ton machin_pas_beau ! L'auto-généré a du bon...
Yep, comme c'est moi qui ai pondu le code générateur, le code généré suit mes conventions ;-)
Vi, une autre manière de dire "z'avez vu comment je code proprement !" :) Mais essaye de réécrire la routine dans le même esprit (enfin non, n'essaie pas en fait), à la main, avec tes conventions, et si tu te plantes pas une seule fois, ne serait-ce que sur les indentations, là tu auras droit à toute mon admiration de bidouilleur crasseux.
Il est clair que sans le source original, la maintenance d'un truc pareil est un pûr cauchemar de programmeur
Effectivement, si jamais je devais faire des modifications en ayant perdu le code générateur, je referais ce dernier au lieu d'essayer de modifier le code généré. Un peu comme pour du code généré par Flex ;-)
Et si tu n'as aucun autre moyen de connaître l'algo déjà utilisé un peu partout dans ton environnement, aucun source à part celui-là, aucune doc sur l'interface proposée ? Réécrire l'original ne sera alors possible qu'au prix d'un énorme effort d'analyse, ça devient même du reverse-engineering. Je me demande si dans ce cas, il ne vaut mieux pas analyser grossièrement la structure et les redondances et essayer de générer un générateur à partir de ça, dans l'unique but de rendre la chose plus facile à gober :)
En tous cas, j'ai déjà eu des expériences similaires avec des algo spécifiques dont je n'avais que les sources désassemblés !
Enfin, un bon générateur aurait plutôt mis :
} // end namespace ns_Huffman_RTF
...à la fin.
Sans doute. Mais bon, le principe étant (dans les cas simples comme celui-ci) qu'un namespace commence au début du .cpp (après les #include) et se termine sur la dernière ligne du .cpp, ça ne porte pas trop à conséquence.
J'essayais de faire de l'humour, n'est-ce pas l'objet de ce message dans le fond ? ... à part démontrer qu'un code propre peut aussi être imbitable :)
Faut quand-même pas déconner avec la lisibilité :)
;-)
-- Tek
Fabien LE LEZ wrote:
On Tue, 29 Jun 2004 21:57:49 +0200, Alexandre BACQUART
<tek512@hotmail.com>:
Au moins,
c'est bien indenté et ça respire ton machin_pas_beau ! L'auto-généré a
du bon...
Yep, comme c'est moi qui ai pondu le code générateur, le code généré
suit mes conventions ;-)
Vi, une autre manière de dire "z'avez vu comment je code proprement !"
:) Mais essaye de réécrire la routine dans le même esprit (enfin non,
n'essaie pas en fait), à la main, avec tes conventions, et si tu te
plantes pas une seule fois, ne serait-ce que sur les indentations, là tu
auras droit à toute mon admiration de bidouilleur crasseux.
Il est clair que sans le source original, la maintenance d'un truc
pareil est un pûr cauchemar de programmeur
Effectivement, si jamais je devais faire des modifications en ayant
perdu le code générateur, je referais ce dernier au lieu d'essayer de
modifier le code généré.
Un peu comme pour du code généré par Flex ;-)
Et si tu n'as aucun autre moyen de connaître l'algo déjà utilisé un peu
partout dans ton environnement, aucun source à part celui-là, aucune doc
sur l'interface proposée ? Réécrire l'original ne sera alors possible
qu'au prix d'un énorme effort d'analyse, ça devient même du
reverse-engineering. Je me demande si dans ce cas, il ne vaut mieux pas
analyser grossièrement la structure et les redondances et essayer de
générer un générateur à partir de ça, dans l'unique but de rendre la
chose plus facile à gober :)
En tous cas, j'ai déjà eu des expériences similaires avec des algo
spécifiques dont je n'avais que les sources désassemblés !
Enfin, un bon générateur aurait plutôt mis :
} // end namespace ns_Huffman_RTF
...à la fin.
Sans doute. Mais bon, le principe étant (dans les cas simples comme
celui-ci) qu'un namespace commence au début du .cpp (après les
#include) et se termine sur la dernière ligne du .cpp, ça ne porte pas
trop à conséquence.
J'essayais de faire de l'humour, n'est-ce pas l'objet de ce message dans
le fond ? ... à part démontrer qu'un code propre peut aussi être
imbitable :)
Faut quand-même pas déconner avec la lisibilité :)
On Tue, 29 Jun 2004 21:57:49 +0200, Alexandre BACQUART :
Au moins, c'est bien indenté et ça respire ton machin_pas_beau ! L'auto-généré a du bon...
Yep, comme c'est moi qui ai pondu le code générateur, le code généré suit mes conventions ;-)
Vi, une autre manière de dire "z'avez vu comment je code proprement !" :) Mais essaye de réécrire la routine dans le même esprit (enfin non, n'essaie pas en fait), à la main, avec tes conventions, et si tu te plantes pas une seule fois, ne serait-ce que sur les indentations, là tu auras droit à toute mon admiration de bidouilleur crasseux.
Il est clair que sans le source original, la maintenance d'un truc pareil est un pûr cauchemar de programmeur
Effectivement, si jamais je devais faire des modifications en ayant perdu le code générateur, je referais ce dernier au lieu d'essayer de modifier le code généré. Un peu comme pour du code généré par Flex ;-)
Et si tu n'as aucun autre moyen de connaître l'algo déjà utilisé un peu partout dans ton environnement, aucun source à part celui-là, aucune doc sur l'interface proposée ? Réécrire l'original ne sera alors possible qu'au prix d'un énorme effort d'analyse, ça devient même du reverse-engineering. Je me demande si dans ce cas, il ne vaut mieux pas analyser grossièrement la structure et les redondances et essayer de générer un générateur à partir de ça, dans l'unique but de rendre la chose plus facile à gober :)
En tous cas, j'ai déjà eu des expériences similaires avec des algo spécifiques dont je n'avais que les sources désassemblés !
Enfin, un bon générateur aurait plutôt mis :
} // end namespace ns_Huffman_RTF
...à la fin.
Sans doute. Mais bon, le principe étant (dans les cas simples comme celui-ci) qu'un namespace commence au début du .cpp (après les #include) et se termine sur la dernière ligne du .cpp, ça ne porte pas trop à conséquence.
J'essayais de faire de l'humour, n'est-ce pas l'objet de ce message dans le fond ? ... à part démontrer qu'un code propre peut aussi être imbitable :)
Faut quand-même pas déconner avec la lisibilité :)
;-)
-- Tek
Jean-Marc Bourguet
Fabien LE LEZ writes:
Bonjour,
Michel me demandait, il y a un bout de temps, de lui montrer un bloc if qui faisait plus d'une vingtaine de lignes.
Et ben, ça y est ! <http://perso.edulang.com/machin_pas_beau.zip> ;-)
Un message a regarder si tu veux faire un Huffman rapide.
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
Fabien LE LEZ <gramster@gramster.com> writes:
Bonjour,
Michel me demandait, il y a un bout de temps, de lui montrer un bloc
if qui faisait plus d'une vingtaine de lignes.
Et ben, ça y est ! <http://perso.edulang.com/machin_pas_beau.zip> ;-)
Un message a regarder si tu veux faire un Huffman rapide.
name99-0212021450150001@handma2.apple.com
A+
--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org
Michel me demandait, il y a un bout de temps, de lui montrer un bloc if qui faisait plus d'une vingtaine de lignes.
Et ben, ça y est ! <http://perso.edulang.com/machin_pas_beau.zip> ;-)
Un message a regarder si tu veux faire un Huffman rapide.
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
Michel Michaud
Dans news:, Fabien LE
Michel me demandait, il y a un bout de temps, de lui montrer un bloc if qui faisait plus d'une vingtaine de lignes.
Et ben, ça y est ! <http://perso.edulang.com/machin_pas_beau.zip> ;-)
Il me semble que je disais que c'était trop long et qu'il faudrait plutôt le récrire autrement. Ton exemple permet de confirmer !
-- Michel Michaud http://www.gdzid.com FAQ de fr.comp.lang.c++ : http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
Dans news:hdt2e0dnk2171gacdbi82rhvb8dlqgkdmn@4ax.com, Fabien LE
Michel me demandait, il y a un bout de temps, de lui montrer un
bloc if qui faisait plus d'une vingtaine de lignes.
Et ben, ça y est !
<http://perso.edulang.com/machin_pas_beau.zip> ;-)
Il me semble que je disais que c'était trop long et qu'il
faudrait plutôt le récrire autrement. Ton exemple permet de
confirmer !
--
Michel Michaud mm@gdzid.com
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/