Imaginons un paquet qui aurait pour description :
« Replaces ISO C calls in the intel-based x86_64-glibc by SSE-enabled calls when possible ».
On ne comprend pas grand chose, c'est donc qu'on en a pas besoin, non ? Sauf que si je voyais un truc comme ça, le potentiel d'accélération que ça induit -- parce que les appels à la bibliothèque standard du C, j'en fais plein, et que j'ai une machine x86_64 avec SSE -- est énorme, vu que les appels à la bibliothèque standard du C, on en a partout.
Alors certes, ça concernerait une petite frange de la population : il y a plein de gens qui n'ont qu'un netbook => atom => 32 bits ; plein de gens qui ont un vieux x86 même pas 64 bits ; plein de gens qui n'ont « que » de l'AMD ; etc. N'empêche, pour la niche concernée, ce genre de paquet pourrait sérieusement accélérer l'intégralité du système (si la glibc n'était pas déjà optimisée dans ce sens -- je ne sais pas si c'est le cas, mais ça semblerait logique d'avoir certains bouts de codes spécifiques pour une architecture donnée, allant un peu au-delà de i686...).
Expliquer dans la doc de ce paquet hypothétique « si tu remplis les critères {intel;x86_64} tu peux potentiellement avoir 30% d'accélération sur certains applications », même si on ne comprend pas bien le charabia de la description donnée au début de ce post, ce serait quand même pas mal.
Hmm, ça c'est un sacré effet de bord de la façon dont les programmes sont chargés en mémoire aujourd'hui sous linux (et ne parlons pas de ce qu'en disent les standards).
Non. La norme du C dit explicitement que les variables statiques et globales sont initialisées à 0. Rien à voir avec UNIX ou Linux.
C'est marrant, y'a pas si longtemps (1 an ?) j'avais exactement le même problème avec Debian pour e1000. À l'époque, y'avait (k)ubuntu qui le fournissait, mais pas l'installeur de la debian testing que j'avais sous la main... et ensuite comme il faut bien avouer que la machine cible était (est toujours d'ailleurs) quand même bien merdique, ça a planté sous ubuntu pour d'autres raisons.
Bref, le support e1000, je l'ai pas vu arriver de suite sur debian quand même (ou alors il existe des variantes de l'interface en fonction de la carte-mère sur laquelle elle est intégrée...).
Oui enfin, le capitalisme « pur » (ou le « libéralisme pur »), c'est comme le communisme hein : on en parle beaucoup, mais personne ne l'a vu en pratique. La première chose qu'un entrepreneur fait, une fois qu'il réussit à prendre l'ascendant sur les autres, c'est bien entendu d'étouffer le plus possible la concurrence à côté, histoire non seulement d'assurer sa survie, mais aussi potentiellement de grossir...
Si je me souviens bien, cela faisait facilement 6 mois qu'elle était là. Elle avait été déployée pour pouvoir répondre rapidement à une croissance de l'utilisation des réseaux mobiles dans le secteur.
Pas forcément. Je me souviens de cette histoire où des gens ont porté plainte contre Orange à cause de l'antenne qui venait d'être installée. Tout le monde dans la famille avait des migraines pas possible. Presque toutes les chaînes avaient repris l'info à l'époque, fait un reportage et tout. Seule M6 avait demandé à Orange ce qu'ils en pensaient. Réponse : « On a installé l'antenne, mais elle n'a jamais été activée ... ».
Je connais des gens qui sont réellement touchés par ce genre d'appareil, mais ce sont les mêmes qui ont des migraines pas possibles à cause de certains routeurs WiFi. La plupart des gens n'ont pas ce problème (reste à déterminer quelle proportion est touchée par ce « la plupart », je vous l'accorde ...).
« [En réponse à "RMS est un ayatollah"] Pourquoi caricaturer ? »
Parce que RMS est aussi le mec qui a dit sur la ML d'OpenBSD qu'il ne pouvait pas la recommander sur la page des distribs UN*X de la FSF parce que ce n'était pas libre ? Que quand on lui a demandé d'où il tenait cette idée il s'est raccroché aux branches comme il pouvait pour finalement dire « mais si, regardez, le logiciel XXX est installable depuis les ports alors qu'il est proprio » ?
Cela dit, PsychoFox a raison : il n'est pas forcément nécessaire d'installer Python partout. :-) Je ne faisais que donner une raison possible (pas forcément une raison pertinente).
J'ai bien regardé tout partout, et s'il est facile de spécifier un remplissage dynamique par des espaces ( printf("%*d\n", width, num); ), il n'y a effectivement pas de fonction disponible dans la bibliothèque de base du C pour faire directement ce que tu veux faire (remplir width fois la chaîne avec fillChar).
Suivant que tu veux faire une « surcharge » de printf ou pas (genre écrire un fillprintf(const char *format, ...)), faire ce que tu veux en C est soit loin d'être trivial (pour rajouter une option à analyser dans la chaîne, il faut se retaper toute la chaîne globalement, et tout analyser), ou bien tu fais une fonction du genre fill_string(const char *format, const size_t pos, const char filler, ...);
Tout dépend.
Je suis d'accord pour dire que les streams C++ ne sont pas si pourris que ça. Par contre, leur apprentissage n'est pas évident selon moi.
« D'ailleurs, quand on débute en C++, on a tendance à coder C plutôt qu'en C++ (genre préférer les structures aux objets). »
Qui est ce « on » ? J'ai appris C et C++ la même année (6 mois de C globalement, 2-3 mois de C++, mais juste la partie « C avec classes », donc pas de templates, pas d'utilisation de namespaces, etc). Dès le départ, on nous avait fait utiliser cout. Alors oui, il s'agissait de cours d'IUT, et oui, le fait de choisir C++ plutôt que Java n'était sans doute pas anodin, mais dès le départ, pas mal de choses étaient claires.
Les gens qui font « du C » en C++ ce sont des gens qui font du procédural dans un langage orienté objet, selon moi (donc utilisation de méthodes de classes ou de fonctions, utilisation de codes de retour plutôt qu'utiliser les exception quand clairement ça se justifierait, etc). Et ça par contre, je l'ai déjà vu faire, même (surtout ?) avec des gens qui avaient 20 ans d'expérience.
Ben justement, vu qu'il n'y a pas d'ambiguïté sur la prononciation des mots hébreux (enfin, c'est toujours une hypothèse, faudrait que j'en parle à un intéressé qui sait mieux que moi), même avec les voyelles manquantes, alors pas de problème. Tu ne prononces pas, mais la lecture n'en est pas moins claire.
« Pour ces deux raisons la prononciation exacte du Tétragramme, à supposer qu’elle soit possible, demeure incertaine. »
Mouais. Je demanderai à ma référence en la matière, mais ça me semble étrange qu'on ne sache pas prononcer le mot, sachant qu'en Hébreux les voyelles sont facultatives à l'écrit, mais qu'à la lecture il n'y a normalement pas d'ambiguïté.
« Je me demande comment tu fais pour éclipser le côté religieux d'une fête religieuse ... »
C'est très simple : à l'école, PERSONNE ne parle de Jesus, Marie, Joseph, Moïse ou Mohammed quand on parle des fêtes de fin d'année.
Prenons les vacances scolaires dans l'ordre :
1/ Vacances dites de Toussaint (ou « automne ») : 7 à 10 jours de vacances (selon qu'on est pré- ou post-bac) : suivant les régions, si je ne me trompe pas, on n'a pas exactement le même calendrier. J'ai bien l'impression qu'en ce moment chez les jeunes, on assimile plus ça à des « vacances d'Halloween » qu'à la fête des morts et de tous les saints.
2/ Vacances de fin d'année (« vacances de Noël ») : la connotation religieuse est certes plus forte chez les gens pratiquants, mais j'aimerais que tu m'expliques quand, à l'école, on te parle religion. Où, dans la rue, on te parle religion (si ce n'est devant les églises ou autres lieux de cultes, et donc là c'est différent).
3/ Vacances de février (pas les mêmes pour tout le monde, pas la même durée, tout pareil que pour la Toussaint).
4/ Vacances de printemps (dites de « Pâques »). Idem. À l'école on parle bien des vacances de Pâques, mais aucune référence à la religion n'y est faite. C'est juste que le nom est resté, vues les centaines d'années où on a appelé cette période de l'année ainsi. Sinon je te propose de débaptiser le Dimanche, parce que bon, Dominus Die (ou quelle que soit l'expression latine consacrée), c'est clairement une connotation religieuse, impardonnable dans un état laïc avec une école laïque.
5/ « Grandes vacances » (vacances d'été).
« Ce qaue je constate, c'est qu'aujourd'hui, pour des raisons historiques, les religions chrétiennes sont favorisées, et c'est une situation qui me parait anormale. »
Je ne vois pas en quoi. Ou alors, autant discuter l'utilité du calendrier grégorien, repartir sur le renommage des mois tel qu'il avait été fait lors de la Révolution, etc. Sauf que non, pour des raisons historiques et pratiques on garde ce dernier. À quelques exceptions près, c'est le calendrier qui fait consensus dans le monde. Pas parce qu'il est chrétien/juif/musulman/boudhiste/que sais-je, mais parce qu'à une époque, une majorité de gens (ou éventuellement les gens qui avaient les moyens de l'imposer par la force) l'ont utilisé.
« Laisser ça comme ça juste parce que c'est historique, c'est malsain (sinon, on aurait pu ne pas accorder le droit de vote aux femmes pour raison historique, etc ...). »
Je trouve l'argument facile. Ça n'est absolument pas comparable selon moi. Au moment où l'école laïque est promulguée, la France est effectivement majoritairement catholique. Du coup forcément, on essaie quand même de se caler sur leurs périodes de fêtes afin d'arranger tout le monde à l'époque. Maintenant, nous avons une population bien plus diversifiée, c'est vrai; mais le choix du moment où on met les vacances est (je trouve) tout de même assez logique, et ce indépendamment de la religion :
2 mois de cours (Sept/Oct) => 1 à 2 semaines de vacances;
2 mois de cours (Nov/Déc) => 2 semaines de vacances;
1,5 mois de cours (Janvier/Fév) => 1 à 2 semaines de vacances;
2 mois de cours (Mar/Avr) => 2 semaines de vacances;
1,5 mois de cours (Mai - jours feriés ;)/Juin) => 2 mois de vacances
Dis-moi ce qui te choque là-dedans.
La France est de moins en moins catholique (au sens du nombre de personnes pratiquantes). Et pourtant, tout le monde arrive peu ou prou à se débrouiller de ces dates-ci. Il doit bien y avoir quelque chose qui fait que ça marche quand même, non ?
« Tiens dans le même ordre d'idées, on refuse le port du voile à l'école alors qu'on fête Noel, Paques et autres dans les écoles. C'est inadmissible. »
Je ne savais pas qu'on fêtait réellement Saint Nicolas dans les écoles, qu'on faisait le carême à Pâques, etc.
Ce qu'on « fête » à Noël, c'est la mise en place de décos plus ou moins kitsch et d'un sapin. Le côté chrétien de la fête est totalement eclipsé (que je sache, on n'envoie pas les enfants à la messe pendant les périodes de fête...). À Pâques, on peint éventuellement des oeufs, et on parle cloches et lapins. Même s'il y a une connotation religieuse au départ, elle n'a pas de sens pour un gamin qui n'a pas d'éducation religieuse chrétienne. Je me souviens aussi avoir fêté Mardi Gras quand j'étais tout petit. Mise à part l'opportunité de me déguiser, je ne vois pas trop en quoi j'ai été conditionné religieusement.
Dernière chose : « laïc » ne signifie pas « anti-clérical ».
« Saud qu'il n'a pas besoin de la stdlib pour cela. »
Oui et non. Là j'ai donné un exemple de code où le compilateur finit par appeler du code déjà optimisé (ici, memcpy). Mais par exemple, il est possible d'imaginer que le compilateur reconnaît des patterns déjà bien définis (par ex, strlen(toto), strncat(dst,toto,...), etc), et que du coup le compilateur joue un peu avec tous ces paramètres là où il ne le ferait pas d'habitude, car les fonctions de la libc sont magiques. Donc même si en toute logique, « on ne sait pas » ce qui peut se passer dans une fonction du point de vue du compilateur, dans le cas des fonctions de la libc, ce n'est pas le cas, et le compilo peut réellement faire des choses bizarres/intelligentes (suivant le point de vue).
Concernant la disponibilité des bibliothèques externes, je ne suis pas d'accord. la glibc par exemple fournit énormément de fonctions en plus de ce que propose la libc-tout-court. GTK est portée à peu près partout. Après tu peux me dire que ces bibliothèques ne sont pas d'assez bonne qualité pour toi (rapport empreinte mémoire/performance, par exemple), mais c'est un autre débat. Idem pour SDL.
« Même Pascal avait des chaines de longueur préfixée… »
Préfixées oui, mais la taille de l'entier était d'un octet. Super pratique pour des chaînes trèèèèèèèèès longues. Cela dit, je suis d'accord avec toi, faire un bête typedef struct string_s { char *str; unsigned len; } string_t;
c'est quand même pas bien compliqué.
« Le probème ici c'est que justement la bibliothèque standard du C n'est pas vraiment ce qu'on appelle un runtime au 21 siècle. Elle propose à peu près rien comme fonctions par rapport à ce que l'on attend maintenant d'un runtime. »
Ça franchement ce n'est pas grave, vu le nombre de bibliothèques externes de qualité qui ont été produites depuis. Ensuite, l'intérêt de la libC, c'est que le compilateur a le droit de considérer que toutes ses fonctions sont magiques. Par exemple, un bête code du genre : for (i=0;i<N;++i) dst[i] = src[i];
peut être remplacé légalement par le compilateur en memcpy(dst,src,N*sizeof(*dst));. Bref, les fonctions de la libc ne sont pas de simples fonctions, elles font partie de la norme et peuvent être manipulées de façon très bizarre par le compilateur s'il décide que ça en vaut la peine ...
Donc les fonctions de manipulation de chaîne n'y échappent pas, et si un compilateur assez futé [1] s'aperçoit qu'il peut simplifier du code de manip de chaîne fait avec les fonctions str*, il ne va pas se gêner pour le faire.
[1] Ce n'est pas toujours évident cependant, bien entendu. Et je ne suis pas certain que les compilos fassent grand chose en général.
À mon avis, plutôt que parler de « variables conditionnelles », on veut plutôt dire « variables de conditions ». Et dans ce cas là, ça prend tout son sens (cf man pthread_cond_wait par exemple).
Je ne suis pas certain de ce que tu veux dire, mais Linpack est un programme réclamant très peu de communications, donc l'important, c'est la puissance brute de calcul, et pas le nombre de coeurs en lui même. Si tu as un super-ordinateur qui est capable de faire 1 PFLOPS avec un seul processeur, il vaut donc autant que 1000 coeurs à 1 TFLOP.
Concernant l'utilisation d'instructions vectorielles, si on prend un compilo non-libre (icc), oui, il vectorise (mieux que gcc dans l'ensemble, mais gcc est en train de sérieusement combler son retard). Par contre, il faut des contraintes fortes à garantir à la compilateur (ou facilement vérifiable à l'exécution sans prendre trois plombes). Du coup, hors des cas « faciles », il faut encore se faire l'appel d'intrinsics à la main dans le code là où ça a du sens.
[^] # Re: reportbug
Posté par lasher . En réponse au journal Acronymania. Évalué à 2.
« Replaces ISO C calls in the intel-based x86_64-glibc by SSE-enabled calls when possible ».
On ne comprend pas grand chose, c'est donc qu'on en a pas besoin, non ? Sauf que si je voyais un truc comme ça, le potentiel d'accélération que ça induit -- parce que les appels à la bibliothèque standard du C, j'en fais plein, et que j'ai une machine x86_64 avec SSE -- est énorme, vu que les appels à la bibliothèque standard du C, on en a partout.
Alors certes, ça concernerait une petite frange de la population : il y a plein de gens qui n'ont qu'un netbook => atom => 32 bits ; plein de gens qui ont un vieux x86 même pas 64 bits ; plein de gens qui n'ont « que » de l'AMD ; etc. N'empêche, pour la niche concernée, ce genre de paquet pourrait sérieusement accélérer l'intégralité du système (si la glibc n'était pas déjà optimisée dans ce sens -- je ne sais pas si c'est le cas, mais ça semblerait logique d'avoir certains bouts de codes spécifiques pour une architecture donnée, allant un peu au-delà de i686...).
Expliquer dans la doc de ce paquet hypothétique « si tu remplis les critères {intel;x86_64} tu peux potentiellement avoir 30% d'accélération sur certains applications », même si on ne comprend pas bien le charabia de la description donnée au début de ce post, ce serait quand même pas mal.
[^] # Re: Et après ?
Posté par lasher . En réponse à la dépêche Fabrice Bellard bat le record des décimales de Pi. Évalué à 5.
Non. La norme du C dit explicitement que les variables statiques et globales sont initialisées à 0. Rien à voir avec UNIX ou Linux.
[^] # Re: re
Posté par lasher . En réponse au journal Consommation de ressources de Windows et Debian. Évalué à 2.
Bref, le support e1000, je l'ai pas vu arriver de suite sur debian quand même (ou alors il existe des variantes de l'interface en fonction de la carte-mère sur laquelle elle est intégrée...).
[^] # Re: Une très bonne nouvelle !
Posté par lasher . En réponse au journal And then they were four .... Évalué à 4.
[^] # Re: Je ne sais pas si ils vont réussir à déployer un réseau
Posté par lasher . En réponse au journal And then they were four .... Évalué à 2.
[^] # Re: Je ne sais pas si ils vont réussir à déployer un réseau
Posté par lasher . En réponse au journal And then they were four .... Évalué à 9.
Je connais des gens qui sont réellement touchés par ce genre d'appareil, mais ce sont les mêmes qui ont des migraines pas possibles à cause de certains routeurs WiFi. La plupart des gens n'ont pas ce problème (reste à déterminer quelle proportion est touchée par ce « la plupart », je vous l'accorde ...).
[^] # Re: Mon dieu ...
Posté par lasher . En réponse au journal GNOME pourrait se séparer du projet GNU. Évalué à 4.
Parce que RMS est aussi le mec qui a dit sur la ML d'OpenBSD qu'il ne pouvait pas la recommander sur la page des distribs UN*X de la FSF parce que ce n'était pas libre ? Que quand on lui a demandé d'où il tenait cette idée il s'est raccroché aux branches comme il pouvait pour finalement dire « mais si, regardez, le logiciel XXX est installable depuis les ports alors qu'il est proprio » ?
Ce n'est qu'un exemple bien sûr.
[^] # Re: Dommage
Posté par lasher . En réponse au journal Nagios va-t-il quitter le C pour le Python?. Évalué à 2.
[^] # Re: Dommage
Posté par lasher . En réponse au journal Nagios va-t-il quitter le C pour le Python?. Évalué à 4.
[^] # Re: Une si bonne API
Posté par lasher . En réponse à la dépêche Sortie de Qt 4.6. Évalué à 2.
Suivant que tu veux faire une « surcharge » de printf ou pas (genre écrire un fillprintf(const char *format, ...)), faire ce que tu veux en C est soit loin d'être trivial (pour rajouter une option à analyser dans la chaîne, il faut se retaper toute la chaîne globalement, et tout analyser), ou bien tu fais une fonction du genre fill_string(const char *format, const size_t pos, const char filler, ...);
Tout dépend.
Je suis d'accord pour dire que les streams C++ ne sont pas si pourris que ça. Par contre, leur apprentissage n'est pas évident selon moi.
[^] # Re: Une si bonne API
Posté par lasher . En réponse à la dépêche Sortie de Qt 4.6. Évalué à 4.
Qui est ce « on » ? J'ai appris C et C++ la même année (6 mois de C globalement, 2-3 mois de C++, mais juste la partie « C avec classes », donc pas de templates, pas d'utilisation de namespaces, etc). Dès le départ, on nous avait fait utiliser cout. Alors oui, il s'agissait de cours d'IUT, et oui, le fait de choisir C++ plutôt que Java n'était sans doute pas anodin, mais dès le départ, pas mal de choses étaient claires.
Les gens qui font « du C » en C++ ce sont des gens qui font du procédural dans un langage orienté objet, selon moi (donc utilisation de méthodes de classes ou de fonctions, utilisation de codes de retour plutôt qu'utiliser les exception quand clairement ça se justifierait, etc). Et ça par contre, je l'ai déjà vu faire, même (surtout ?) avec des gens qui avaient 20 ans d'expérience.
[^] # Re: Le Chabbat
Posté par lasher . En réponse au journal Intel ne respecterait pas le Sabbat.... Évalué à 2.
[^] # Re: Le Chabbat
Posté par lasher . En réponse au journal Intel ne respecterait pas le Sabbat.... Évalué à 2.
[^] # Re: Le Chabbat
Posté par lasher . En réponse au journal Intel ne respecterait pas le Sabbat.... Évalué à 2.
Mouais. Je demanderai à ma référence en la matière, mais ça me semble étrange qu'on ne sache pas prononcer le mot, sachant qu'en Hébreux les voyelles sont facultatives à l'écrit, mais qu'à la lecture il n'y a normalement pas d'ambiguïté.
[^] # Re: Bof .....
Posté par lasher . En réponse au journal Intel ne respecterait pas le Sabbat.... Évalué à 5.
C'est très simple : à l'école, PERSONNE ne parle de Jesus, Marie, Joseph, Moïse ou Mohammed quand on parle des fêtes de fin d'année.
Prenons les vacances scolaires dans l'ordre :
1/ Vacances dites de Toussaint (ou « automne ») : 7 à 10 jours de vacances (selon qu'on est pré- ou post-bac) : suivant les régions, si je ne me trompe pas, on n'a pas exactement le même calendrier. J'ai bien l'impression qu'en ce moment chez les jeunes, on assimile plus ça à des « vacances d'Halloween » qu'à la fête des morts et de tous les saints.
2/ Vacances de fin d'année (« vacances de Noël ») : la connotation religieuse est certes plus forte chez les gens pratiquants, mais j'aimerais que tu m'expliques quand, à l'école, on te parle religion. Où, dans la rue, on te parle religion (si ce n'est devant les églises ou autres lieux de cultes, et donc là c'est différent).
3/ Vacances de février (pas les mêmes pour tout le monde, pas la même durée, tout pareil que pour la Toussaint).
4/ Vacances de printemps (dites de « Pâques »). Idem. À l'école on parle bien des vacances de Pâques, mais aucune référence à la religion n'y est faite. C'est juste que le nom est resté, vues les centaines d'années où on a appelé cette période de l'année ainsi. Sinon je te propose de débaptiser le Dimanche, parce que bon, Dominus Die (ou quelle que soit l'expression latine consacrée), c'est clairement une connotation religieuse, impardonnable dans un état laïc avec une école laïque.
5/ « Grandes vacances » (vacances d'été).
« Ce qaue je constate, c'est qu'aujourd'hui, pour des raisons historiques, les religions chrétiennes sont favorisées, et c'est une situation qui me parait anormale. »
Je ne vois pas en quoi. Ou alors, autant discuter l'utilité du calendrier grégorien, repartir sur le renommage des mois tel qu'il avait été fait lors de la Révolution, etc. Sauf que non, pour des raisons historiques et pratiques on garde ce dernier. À quelques exceptions près, c'est le calendrier qui fait consensus dans le monde. Pas parce qu'il est chrétien/juif/musulman/boudhiste/que sais-je, mais parce qu'à une époque, une majorité de gens (ou éventuellement les gens qui avaient les moyens de l'imposer par la force) l'ont utilisé.
« Laisser ça comme ça juste parce que c'est historique, c'est malsain (sinon, on aurait pu ne pas accorder le droit de vote aux femmes pour raison historique, etc ...). »
Je trouve l'argument facile. Ça n'est absolument pas comparable selon moi. Au moment où l'école laïque est promulguée, la France est effectivement majoritairement catholique. Du coup forcément, on essaie quand même de se caler sur leurs périodes de fêtes afin d'arranger tout le monde à l'époque. Maintenant, nous avons une population bien plus diversifiée, c'est vrai; mais le choix du moment où on met les vacances est (je trouve) tout de même assez logique, et ce indépendamment de la religion :
2 mois de cours (Sept/Oct) => 1 à 2 semaines de vacances;
2 mois de cours (Nov/Déc) => 2 semaines de vacances;
1,5 mois de cours (Janvier/Fév) => 1 à 2 semaines de vacances;
2 mois de cours (Mar/Avr) => 2 semaines de vacances;
1,5 mois de cours (Mai - jours feriés ;)/Juin) => 2 mois de vacances
Dis-moi ce qui te choque là-dedans.
La France est de moins en moins catholique (au sens du nombre de personnes pratiquantes). Et pourtant, tout le monde arrive peu ou prou à se débrouiller de ces dates-ci. Il doit bien y avoir quelque chose qui fait que ça marche quand même, non ?
[^] # Re: Bof .....
Posté par lasher . En réponse au journal Intel ne respecterait pas le Sabbat.... Évalué à 3.
Je ne savais pas qu'on fêtait réellement Saint Nicolas dans les écoles, qu'on faisait le carême à Pâques, etc.
Ce qu'on « fête » à Noël, c'est la mise en place de décos plus ou moins kitsch et d'un sapin. Le côté chrétien de la fête est totalement eclipsé (que je sache, on n'envoie pas les enfants à la messe pendant les périodes de fête...). À Pâques, on peint éventuellement des oeufs, et on parle cloches et lapins. Même s'il y a une connotation religieuse au départ, elle n'a pas de sens pour un gamin qui n'a pas d'éducation religieuse chrétienne. Je me souviens aussi avoir fêté Mardi Gras quand j'étais tout petit. Mise à part l'opportunité de me déguiser, je ne vois pas trop en quoi j'ai été conditionné religieusement.
Dernière chose : « laïc » ne signifie pas « anti-clérical ».
[^] # Re: Humm...
Posté par lasher . En réponse à la dépêche Sortie de la version 2.11 de la bibliothèque standard C GNU (glibc). Évalué à 2.
Oui et non. Là j'ai donné un exemple de code où le compilateur finit par appeler du code déjà optimisé (ici, memcpy). Mais par exemple, il est possible d'imaginer que le compilateur reconnaît des patterns déjà bien définis (par ex, strlen(toto), strncat(dst,toto,...), etc), et que du coup le compilateur joue un peu avec tous ces paramètres là où il ne le ferait pas d'habitude, car les fonctions de la libc sont magiques. Donc même si en toute logique, « on ne sait pas » ce qui peut se passer dans une fonction du point de vue du compilateur, dans le cas des fonctions de la libc, ce n'est pas le cas, et le compilo peut réellement faire des choses bizarres/intelligentes (suivant le point de vue).
Concernant la disponibilité des bibliothèques externes, je ne suis pas d'accord. la glibc par exemple fournit énormément de fonctions en plus de ce que propose la libc-tout-court. GTK est portée à peu près partout. Après tu peux me dire que ces bibliothèques ne sont pas d'assez bonne qualité pour toi (rapport empreinte mémoire/performance, par exemple), mais c'est un autre débat. Idem pour SDL.
[^] # Re: Humm...
Posté par lasher . En réponse à la dépêche Sortie de la version 2.11 de la bibliothèque standard C GNU (glibc). Évalué à 2.
Préfixées oui, mais la taille de l'entier était d'un octet. Super pratique pour des chaînes trèèèèèèèèès longues. Cela dit, je suis d'accord avec toi, faire un bête
typedef struct string_s { char *str; unsigned len; } string_t;
c'est quand même pas bien compliqué.
[^] # Re: Humm...
Posté par lasher . En réponse à la dépêche Sortie de la version 2.11 de la bibliothèque standard C GNU (glibc). Évalué à 2.
Ça franchement ce n'est pas grave, vu le nombre de bibliothèques externes de qualité qui ont été produites depuis. Ensuite, l'intérêt de la libC, c'est que le compilateur a le droit de considérer que toutes ses fonctions sont magiques. Par exemple, un bête code du genre :
for (i=0;i<N;++i) dst[i] = src[i];
peut être remplacé légalement par le compilateur en
memcpy(dst,src,N*sizeof(*dst));
. Bref, les fonctions de la libc ne sont pas de simples fonctions, elles font partie de la norme et peuvent être manipulées de façon très bizarre par le compilateur s'il décide que ça en vaut la peine ...Donc les fonctions de manipulation de chaîne n'y échappent pas, et si un compilateur assez futé [1] s'aperçoit qu'il peut simplifier du code de manip de chaîne fait avec les fonctions str*, il ne va pas se gêner pour le faire.
[1] Ce n'est pas toujours évident cependant, bien entendu. Et je ne suis pas certain que les compilos fassent grand chose en général.
[^] # Re: Libre ou pas libre ?
Posté par lasher . En réponse au journal GoogleOS / ChromeOS / minitel 2. Évalué à 1.
[^] # Re: Humm...
Posté par lasher . En réponse à la dépêche Sortie de la version 2.11 de la bibliothèque standard C GNU (glibc). Évalué à 4.
[^] # Re: Statistique
Posté par lasher . En réponse à la dépêche Le Top 500 de novembre 2009. Évalué à 2.
[^] # Re: hégémonie d'Intel et AMD
Posté par lasher . En réponse à la dépêche Le Top 500 de novembre 2009. Évalué à 2.
[^] # Re: Microsoft va-t-il LIBÉRER .net ?
Posté par lasher . En réponse à la dépêche Tomboy vs Gnote. Évalué à 2.
[^] # Re: système et garbage collector?
Posté par lasher . En réponse à la dépêche Go : Un nouveau langage chez Google. Évalué à 2.