Le coin des développeurs

Page 3 sur 6 Précédent  1, 2, 3, 4, 5, 6  Suivant

Voir le sujet précédent Voir le sujet suivant Aller en bas

Re: Le coin des développeurs

Message par stench le Jeu 19 Déc 2013 - 17:32

C'est bien entendu un chiffre au pif que je donnais. Comme je ne connais absolument personne qui programme, mais vraiment personne, on va dire que ça nuance tes connaissances. C'était juste une boutade sans intérêt en réponse à une remarque tout autant dénuée d'intérêt concernant les "has been"  Wink 

stench
Guide spirituel


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Jeu 19 Déc 2013 - 18:04

@Stench:  des millions de personnes programment: lave-linge, lave-vaisselle, reveille-matin, etc, ?...

Ici, on souhaite parler d'informatique, sans avoir peur d'être "technique". Si tu te sens mal à l'aise avec une notion, si tu as une question pointue, pose-la: grincheux a l'air d'être bien armé pour commencer à te répondre.

Ici, on propose de parler de tout et de n'importe quoi jusqu'au moment où un sujet, un objet?, va émerger. Tous les accrocs du code vont alors ronger l'os pour trouver une solution lisible, fiable et pertinente. Bref, on est dans le "je-ne-sais-quoi", on nage en pleine serendipité. On surfe sur le thème, les doigts prêts à balancer une giclée d'octets.

Si tu te sens mal à l'aise avec ça,  n'hésite pas à passer ton chemin camarade.
" />

_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par stench le Jeu 19 Déc 2013 - 18:14

@If_Then_Else a écrit:@Stench:  des millions de personnes programment: lave-linge, lave-vaisselle, reveille-matin, etc, ?...

Ici, on souhaite parler d'informatique, sans avoir peur d'être "technique". Si tu te sens mal à l'aise avec une notion, si tu as une question pointue, pose-la: grincheux a l'air d'être bien armé pour commencer à te répondre.

Ici, on propose de parler de tout et de n'importe quoi jusqu'au moment où un sujet, un objet?, va émerger. Tous les accrocs du code vont alors ronger l'os pour trouver une solution lisible, fiable et pertinente. Bref, on est dans le "je-ne-sais-quoi", on nage en pleine serendipité. On surfe sur le thème, les doigts prêts à balancer une giclée d'octets.

Si tu te sens mal à l'aise avec ça,  n'hésite pas à passer ton chemin camarade.

Je ne suis pas mal à l'aise du tout, jusqu'à aujourd'hui je m'en foutais complètement. Grace à toi, je découvre un monde que j'ignore complètement (ce qui en soi n'est pas dramatique, on vit tous en ignorant des tas et des tas d'univers) et qui m'intrigue puisque je ne comprends pas un mot à ce que tu dis. Ou plutôt si, je comprends le plupart des mots que tu utilises mais leur association ne veut rien dire pour moi. Une phrase comme "Ici, on propose de parler de tout et de n'importe quoi jusqu'au moment où un sujet, un objet?, va émerger. Tous les accrocs du code vont alors ronger l'os pour trouver une solution lisible, fiable et pertinente. Bref, on est dans le "je-ne-sais-quoi", on nage en pleine serendipité. On surfe sur le thème, les doigts prêts à balancer une giclée d'octets" n'a aucun sens pour moi, je n'en comprends ni le but ni les solutions. Du coup, par une boutade, j'ai signalé cet état de fait, à la fois amusé et sidéré. Maintenant, je veux comprendre. Explique-moi, s'il te plait.

stench
Guide spirituel


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par yphrog le Jeu 19 Déc 2013 - 18:20

J'ai plutôt bien aimé ce que tu cites, stench. Very Happy

_________________
ok


yphrog
Grand sage


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Jeu 19 Déc 2013 - 18:45

@stench a écrit:
@If_Then_Else a écrit:@Stench:  des millions de personnes programment: lave-linge, lave-vaisselle, reveille-matin, etc, ?...

Ici, on souhaite parler d'informatique, sans avoir peur d'être "technique". Si tu te sens mal à l'aise avec une notion, si tu as une question pointue, pose-la: grincheux a l'air d'être bien armé pour commencer à te répondre.

Ici, on propose de parler de tout et de n'importe quoi jusqu'au moment où un sujet, un objet?, va émerger. Tous les accrocs du code vont alors ronger l'os pour trouver une solution lisible, fiable et pertinente. Bref, on est dans le "je-ne-sais-quoi", on nage en pleine serendipité. On surfe sur le thème, les doigts prêts à balancer une giclée d'octets.

Si tu te sens mal à l'aise avec ça,  n'hésite pas à passer ton chemin camarade.

Je ne suis pas mal à l'aise du tout, jusqu'à aujourd'hui je m'en foutais complètement. Grace à toi, je découvre un monde que j'ignore complètement (ce qui en soi n'est pas dramatique, on vit tous en ignorant des tas et des tas d'univers) et qui m'intrigue puisque je ne comprends pas un mot à ce que tu dis. Ou plutôt si, je comprends le plupart des mots que tu utilises mais leur association ne veut rien dire pour moi. Une phrase comme "Ici, on propose de parler de tout et de n'importe quoi jusqu'au moment où un sujet, un objet?, va émerger. Tous les accrocs du code vont alors ronger l'os pour trouver une solution lisible, fiable et pertinente. Bref, on est dans le "je-ne-sais-quoi", on nage en pleine serendipité. On surfe sur le thème, les doigts prêts à balancer une giclée d'octets" n'a aucun sens pour moi, je n'en comprends ni le but ni les solutions. Du coup, par une boutade, j'ai signalé cet état de fait, à la fois amusé et sidéré. Maintenant, je veux comprendre. Explique-moi, s'il te plait.

Je ne retiens que le mot "amusé", car effectivement il y a de quoi!

Et oui, ce fil est un grand fourre-tout, à l'image du monde qui se numérise à la vitesse grand V!

Intitulé le coin du développeur, il propose aux profs plus ou moins passionnés de débattre d'informatique, du point de vue du code ou au-delà ex:
-Qu'est-ce que les néo-objets cités par Stiegler (cf. plus haut) ?
- Est-il possible d'améliorer avec du code son modulateur de fréquence?
- La culture GEEK chez le jeune (l'anti-héro cérébral) ?
- Sur le plan cognitif, quel est l'impact de l'algorithmie (lire : http://www.college-de-france.fr/site/gerard-berry/#course) ?

Car le monde des neurones bouge à  toute vitesse: ça devient difficile d'y pénétrer. La connaissance, même minime d'un langage informatique est désormais indispensable (et préférable au Latin ou autres langues mortes, et je suis triste avec toi sur ce point...) pour  en comprendre la nature et d'avoir une réflexion critique (grincheux toujours lui :-)  lire son blog ).

Par exemple il ( le grincheux ) propose sa contribution pour améliorer le codage des programmes et ça donne ça  Suspect :

% Neume pointée (reste à débugguer entièrement)
\def\punctump #1{\punctum #1\g@punctump #1}
\def\g@point{\xgregkeyfont\C@Point\z@\raise}
\def\g@punctump#1{\check@staff\getn@i#1\relax\let\n@sym\g@point\hss%
  \y@v\qn@width\writ@note\fi}

% Porrectus flexus deminut (soyons fous !)
\def\Porrectusflexusdeminut#1#2#3#4{%
  \advancefalse\bporrectus{#1}{#2}{\xgregchar0\xgregchar0\xgregchar0}%
  \getthen@one@three{#2}{#3}{#4}%
  \zcharnote{#2}{\vrule\@height\the@two@minus@one\internote\@depth\z@}%
  \zsqu{#3}%
  %\zcharnote{#3}{\punctumauctdown{0}}%
  \zcharnote{#4}{\xgregchar0\vrule\@depth\z@ \@height
  \the@two@minus@three\internote}\r@small@squ{#4}}

Et je vais vérifier si ses objectifs concernant un langage performant sont bien atteints, à savoir  Twisted Evil :
•langage procédural ou fonctionnel impur ;
•langage à inférence de type ;
•séparation stricte de la notion de donnée de celle de variable, la variable n'étant qu'une donnée de type nom référençant une autre donnée ;
•aucune allocation ou libération de la mémoire explicite, aucun accès à des pointeurs ;
•aucune instruction de type GOTO, mais possibilité de sortir d'une boucle par anticipation ou de boucler par anticipation ;
•évaluation de tous les éléments d'une expression même si le résultat est connu d'avance ;
•extension des domaines de définition des fonctions mathématiques pour garder autant que possible un résultat exact à la précision près du processeur ;
•aucun mécanisme d'affectation en notation algébrique ;
•des garde-fous pour éviter les erreurs manifestes (éléments en dehors d'un tableau…) ;
•séparation du fond et de la forme.


Dernière édition par If_Then_Else le Jeu 19 Déc 2013 - 18:59, édité 1 fois

_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Jeu 19 Déc 2013 - 18:57

@stench a écrit:
@If_Then_Else a écrit:@Stench:  des millions de personnes programment: lave-linge, lave-vaisselle, reveille-matin, etc, ?...

Ici, on souhaite parler d'informatique, sans avoir peur d'être "technique". Si tu te sens mal à l'aise avec une notion, si tu as une question pointue, pose-la: grincheux a l'air d'être bien armé pour commencer à te répondre.

Ici, on propose de parler de tout et de n'importe quoi jusqu'au moment où un sujet, un objet?, va émerger. Tous les accrocs du code vont alors ronger l'os pour trouver une solution lisible, fiable et pertinente. Bref, on est dans le "je-ne-sais-quoi", on nage en pleine serendipité. On surfe sur le thème, les doigts prêts à balancer une giclée d'octets.

Si tu te sens mal à l'aise avec ça,  n'hésite pas à passer ton chemin camarade.

Je ne suis pas mal à l'aise du tout, jusqu'à aujourd'hui je m'en foutais complètement. Grace à toi, je découvre un monde que j'ignore complètement (ce qui en soi n'est pas dramatique, on vit tous en ignorant des tas et des tas d'univers) et qui m'intrigue puisque je ne comprends pas un mot à ce que tu dis. Ou plutôt si, je comprends le plupart des mots que tu utilises mais leur association ne veut rien dire pour moi. Une phrase comme "Ici, on propose de parler de tout et de n'importe quoi jusqu'au moment où un sujet, un objet?, va émerger. Tous les accrocs du code vont alors ronger l'os pour trouver une solution lisible, fiable et pertinente. Bref, on est dans le "je-ne-sais-quoi", on nage en pleine serendipité. On surfe sur le thème, les doigts prêts à balancer une giclée d'octets" n'a aucun sens pour moi, je n'en comprends ni le but ni les solutions. Du coup, par une boutade, j'ai signalé cet état de fait, à la fois amusé et sidéré. Maintenant, je veux comprendre. Explique-moi, s'il te plait.

Comprends-tu ces vers d'Arthur :
Fêtes de la faim

Ma faim, Anne, Anne,
Fuis sur ton âne.

Si j'ai du goût, ce n'est guères
Que pour la terre et les pierres.
Dinn ! dinn ! dinn ! dinn ! Mangeons l'air,
Le roc, les charbons, le fer.

Mes faims, tournez. Paissez, faims,
Le pré des sons !
Attirez le gai venin
Des liserons ;

Mangez
Les cailloux qu'un pauvre brise,
Les vieilles pierres d'église,
Les galets, fils des déluges,
Pains couchés aux vallées grises !

Mes faims, c'est les bouts d'air noir ;
L'azur sonneur ;
- C'est l'estomac qui me tire.
C'est le malheur.

Sur terre ont paru les feuilles !
Je vais aux chairs de fruit blettes.
Au sein du sillon je cueille
La doucette et la violette.

Ma faim, Anne, Anne !
Fuis sur ton âne.

_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par Le grincheux le Jeu 19 Déc 2013 - 19:02

@If_Then_Else a écrit:
Par exemple il ( le grincheux ) propose sa contribution pour améliorer le codage des programmes et ça donne ça  Suspect :
Code:

% Neume pointée (reste à débugguer entièrement)
 \def\punctump #1{\punctum #1\g@punctump #1}
 \def\g@point{\xgregkeyfont\C@Point\z@\raise}
 \def\g@punctump#1{\check@staff\getn@i#1\relax\let\n@sym\g@point\hss%
  \y@v\qn@width\writ@note\fi}

 % Porrectus flexus deminut (soyons fous !)
 \def\Porrectusflexusdeminut#1#2#3#4{%
   \advancefalse\bporrectus{#1}{#2}{\xgregchar0\xgregchar0\xgregchar0}%
   \getthen@one@three{#2}{#3}{#4}%
   \zcharnote{#2}{\vrule\@height\the@two@minus@one\internote\@depth\z@}%
   \zsqu{#3}%
   %\zcharnote{#3}{\punctumauctdown{0}}%
   \zcharnote{#4}{\xgregchar0\vrule\@depth\z@ \@height
   \the@two@minus@three\internote}\r@small@squ{#4}}

Sorti du contexte, c'est parfaitement idiot. J'en arrive à me demander si tu n'es pas un gros troll poilu... Ce bout de code est un code TeX qui fonctionne sur MusiXTeX et permet d'étendre musigre qui ne contient pas tout ce qu'il faut pour écrire du grégorien moderne. La syntaxe est celle de TeX qui est un langage impératif (et un peu tordu puisque
Code:
\uppercase\romannumeral{5}
ne donnera jamais 'V').

Et je vais vérifier si ses objectifs concernant un langage performant sont bien atteints, à savoir  Twisted Evil :
•langage procédural ou fonctionnel impur ;
•langage à inférence de type ;
•séparation stricte de la notion de donnée de celle de variable, la variable n'étant qu'une donnée de type nom référençant une autre donnée ;
•aucune allocation ou libération de la mémoire explicite, aucun accès à des pointeurs ;
•aucune instruction de type GOTO, mais possibilité de sortir d'une boucle par anticipation ou de boucler par anticipation ;
•évaluation de tous les éléments d'une expression même si le résultat est connu d'avance ;
•extension des domaines de définition des fonctions mathématiques pour garder autant que possible un résultat exact à la précision près du processeur ;
•aucun mécanisme d'affectation en notation algébrique ;
•des garde-fous pour éviter les erreurs manifestes (éléments en dehors d'un tableau…) ;
•séparation du fond et de la forme.
Tu peux. Il y a dix ans de boulot pour arriver à cette liste.

_________________
Le carnet du grincheux
Chroniques de misanthropie ordinaire
http://grincheux.de-charybde-en-scylla.fr/
http://loubardes.de-charybde-en-scylla.fr/

Le grincheux
Sage


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Jeu 19 Déc 2013 - 19:05

Le Grincheux grogne contre tout le monde, comme un Flaubert informatisé. Pour lui point de salut sans RPL. Alors j'ai fait une première recherche sur Wiki : http://fr.wikipedia.org/wiki/RPL

Mais rien de mieux que la lecture du code

RPL Examples

The following program computes the sum of the squares of the numbers 1 through 10:
Program:                 Comments:
<< 0                     Start with a sum of zero
 1 10 FOR i             For i = 1 to 10 (start end FOR loop_var)
   i SQ +               Add i^2 to the sum
 NEXT                   Add 1 to i and loop back to the FOR i
>>


Here is the modification of the program above that takes the range of numbers from the stack. This program demonstrates the use of a local variables fst and lst. The variables fst and lst are visible only to the procedure that follows their definition. Using lower case for local variables is a common convention but is not required. (The variable i created by the FOR function is also local.)
Program:                 Comments:
<< -> fst lst            Save the numbers on the stack in local variable fst and lst
 <<                     This is the block for which fst and lst are defined
   0                    Start with a sum of zero
   fst lst FOR i        For i = fst to lst (start end FOR loop_var)
     i SQ +             Add i^2 to the sum
   NEXT                 Add 1 to i and loop back to the FOR i
 >>
>>


After typing this program into the stack, it can be saved in the variable SSQS by pressing 'SSQS STO. Then the start and end values can be entered on the stack and the user can either invoke SSQS by typing SSQS or choosing it from the USER menu.

Here is a modification of the above program that deals with the case of the the user entering the first and last values in reverse order.
Program:                 Comments:
<< DUP2                  Duplicate the two input arguments because > will consume them
  IF > THEN SWAP END    If the order is reversed - then swap them on the stack before...
  -> fst lst            Save the numbers on the stack in local variable fst and lst
  <<                    This is the block for which fst and lst are defined
    0                   Start with a sum of zero
    fst lst FOR i       For i = fst to lst (start end FOR loop_var)
      i SQ +            Add i^2 to the sum
    NEXT                Add 1 to i and loop back to the FOR i
  >>
>>


Here is a modification of the above program that does the same thing except that the conditional is expressed in a more "postfix way". The only difference is on the second line. This one computes the test > which results in 1 or 0, places a procedure on the stack (containing only SWAP) and then executes IFT which executes the procedure on level 1 of the stack if the condition on level 2 is true (non-zero).
Program:                 Comments:
<< DUP2                  Save the arguments (> will consume them)
  > << SWAP >> IFT      If the order is reversed - then swap them on the stack before...
  -> fst lst            Save the numbers on the stack in local variable fst and lst
  <<                    This is the block for which fst and lst are defined
    0                   Start with a sum of zero
    fst lst FOR i       For i = fst to lst (start end FOR loop_var)
      i SQ +            Add i^2 to the sum
    NEXT                Add 1 to i and loop back to the FOR i
  >>
>>


Dernière édition par If_Then_Else le Jeu 19 Déc 2013 - 19:07, édité 1 fois

_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Jeu 19 Déc 2013 - 19:06

@Le grincheux a écrit:
@If_Then_Else a écrit:
Par exemple il ( le grincheux ) propose sa contribution pour améliorer le codage des programmes et ça donne ça  Suspect :
Code:

% Neume pointée (reste à débugguer entièrement)
 \def\punctump #1{\punctum #1\g@punctump #1}
 \def\g@point{\xgregkeyfont\C@Point\z@\raise}
 \def\g@punctump#1{\check@staff\getn@i#1\relax\let\n@sym\g@point\hss%
  \y@v\qn@width\writ@note\fi}

 % Porrectus flexus deminut (soyons fous !)
 \def\Porrectusflexusdeminut#1#2#3#4{%
   \advancefalse\bporrectus{#1}{#2}{\xgregchar0\xgregchar0\xgregchar0}%
   \getthen@one@three{#2}{#3}{#4}%
   \zcharnote{#2}{\vrule\@height\the@two@minus@one\internote\@depth\z@}%
   \zsqu{#3}%
   %\zcharnote{#3}{\punctumauctdown{0}}%
   \zcharnote{#4}{\xgregchar0\vrule\@depth\z@ \@height
   \the@two@minus@three\internote}\r@small@squ{#4}}

Sorti du contexte, c'est parfaitement idiot. J'en arrive à me demander si tu n'es pas un gros troll poilu... Ce bout de code est un code TeX qui fonctionne sur MusiXTeX et permet d'étendre musigre qui ne contient pas tout ce qu'il faut pour écrire du grégorien moderne. La syntaxe est celle de TeX qui est un langage impératif (et un peu tordu puisque
Code:
\uppercase\romannumeral{5}
ne donnera jamais 'V').

Et je vais vérifier si ses objectifs concernant un langage performant sont bien atteints, à savoir  Twisted Evil :
•langage procédural ou fonctionnel impur ;
•langage à inférence de type ;
•séparation stricte de la notion de donnée de celle de variable, la variable n'étant qu'une donnée de type nom référençant une autre donnée ;
•aucune allocation ou libération de la mémoire explicite, aucun accès à des pointeurs ;
•aucune instruction de type GOTO, mais possibilité de sortir d'une boucle par anticipation ou de boucler par anticipation ;
•évaluation de tous les éléments d'une expression même si le résultat est connu d'avance ;
•extension des domaines de définition des fonctions mathématiques pour garder autant que possible un résultat exact à la précision près du processeur ;
•aucun mécanisme d'affectation en notation algébrique ;
•des garde-fous pour éviter les erreurs manifestes (éléments en dehors d'un tableau…) ;
•séparation du fond et de la forme.
Tu peux. Il y a dix ans de boulot pour arriver à cette liste.

Mais oui, très poilu tu-tu  Laughing 

_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Jeu 19 Déc 2013 - 19:17

@Grincheux:

J'ai étudié mon "Réseaux, architectures, protocoles, applications (Andrew Tanenbaum)"  à fond quand j'étais au CNAM en 1988 !

_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par Le grincheux le Jeu 19 Déc 2013 - 19:17

@If_Then_Else a écrit:Le Grincheux grogne contre tout le monde, comme un Flaubert informatisé. Pour lui point de salut sans RPL. Alors j'ai fait une première recherche sur Wiki : http://fr.wikipedia.org/wiki/RPL
Ce que tu n'arrives pas à comprendre, c'est que cette syntaxe provient directement des points que j'ai indiqués précédemment. De ma fameuse liste. La syntaxe est une conséquence de cette liste, rien de plus.

Au passage, RPL et RPL/2 sont deux choses distinctes même s'il se ressemblent.


Dernière édition par Le grincheux le Jeu 19 Déc 2013 - 19:32, édité 1 fois

_________________
Le carnet du grincheux
Chroniques de misanthropie ordinaire
http://grincheux.de-charybde-en-scylla.fr/
http://loubardes.de-charybde-en-scylla.fr/

Le grincheux
Sage


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par Le grincheux le Jeu 19 Déc 2013 - 19:19

@If_Then_Else a écrit:@Grincheux:

J'ai étudié mon "Réseaux, architectures, protocoles, applications (Andrew Tanenbaum)"  à fond quand j'étais au CNAM en 1988 !
Et alors ? Moi, ma bible, c'est "the art of computer programming", le bouquin qui contient la parole de dieu. Mais je ne vois pas l'intérêt d'en parler ici.

_________________
Le carnet du grincheux
Chroniques de misanthropie ordinaire
http://grincheux.de-charybde-en-scylla.fr/
http://loubardes.de-charybde-en-scylla.fr/

Le grincheux
Sage


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Jeu 19 Déc 2013 - 19:23

@Le grincheux a écrit:
@If_Then_Else a écrit:Le Grincheux grogne contre tout le monde, comme un Flaubert informatisé. Pour lui point de salut sans RPL. Alors j'ai fait une première recherche sur Wiki : http://fr.wikipedia.org/wiki/RPL
Ce que tu n'arrives pas à comprendre, c'est que cette syntaxe provient directement des points que j'ai indiqués précédemment. De ma fameuse liste.

Au passage, RPL et RPL/2 sont deux choses distinctes même s'il se ressemblent.

Alors disons que je commence par m'initier par RPL version 1.0 et que je passerai à RPL/2 si cela te parais convenable...

_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par Le grincheux le Jeu 19 Déc 2013 - 19:26

@If_Then_Else a écrit:
@Le grincheux a écrit:
@If_Then_Else a écrit:Le Grincheux grogne contre tout le monde, comme un Flaubert informatisé. Pour lui point de salut sans RPL. Alors j'ai fait une première recherche sur Wiki : http://fr.wikipedia.org/wiki/RPL
Ce que tu n'arrives pas à comprendre, c'est que cette syntaxe provient directement des points que j'ai indiqués précédemment. De ma fameuse liste.

Au passage, RPL et RPL/2 sont deux choses distinctes même s'il se ressemblent.

Alors disons que je commence par m'initier par RPL version 1.0 et que je passerai à RPL/2 si cela te parais convenable...
Je ne sais pas dans quelle langue te le dire, mais le RPL (produit HP qui signifie Rom-based Programming Language) n'est pas la version 1.0 du RPL/2 (version le Grincheux qui signifie Reverse Polish Lisp). Ces deux langages ont des syntaxes proches parce qu'ils répondent aux mêmes questions. C'est tout.

Et j'ajouterais qu'ils sont assez subtilement incompatibles.

_________________
Le carnet du grincheux
Chroniques de misanthropie ordinaire
http://grincheux.de-charybde-en-scylla.fr/
http://loubardes.de-charybde-en-scylla.fr/

Le grincheux
Sage


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Jeu 19 Déc 2013 - 19:33

@Le grincheux a écrit:
@If_Then_Else a écrit:@Grincheux:

J'ai étudié mon "Réseaux, architectures, protocoles, applications (Andrew Tanenbaum)"  à fond quand j'étais au CNAM en 1988 !
Et alors ? Moi, ma bible, c'est "the art of computer programming", le bouquin qui contient la parole de dieu. Mais je ne vois pas l'intérêt d'en parler ici.

Tu as tort! Il me semble que la connaissance d'un "langage informatique " (donc une culture) devient capitale (Les langages de programmation, vecteurs de la pensée informatique .

Seymour nous le disait:


Je commence à aimer t'entendre grogner comme un vieux maître qui s'impatiente devant son élève ignare.

_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par Le grincheux le Jeu 19 Déc 2013 - 19:37

@If_Then_Else a écrit:
@Le grincheux a écrit:
@If_Then_Else a écrit:@Grincheux:

J'ai étudié mon "Réseaux, architectures, protocoles, applications (Andrew Tanenbaum)"  à fond quand j'étais au CNAM en 1988 !
Et alors ? Moi, ma bible, c'est "the art of computer programming", le bouquin qui contient la parole de dieu. Mais je ne vois pas l'intérêt d'en parler ici.

Tu as tort! Il me semble que la connaissance d'un "langage informatique " (donc une culture)  devient capitale (Les langages de programmation, vecteurs de la pensée informatique .
Certainement pas. Le langage de programmation n'est qu'une façon d'exprimer un problème et le choix de ce langage n'est pas anecdotique. Ce n'est pas le vecteur de la pensée informatique (erreur trop courante), c'est la projection de la pensée informatique dans l'espace sémantique du langage. L'expression dans un langage d'un algorithme nécessite une réduction.

Je commence à aimer t'entendre grogner comme un vieux maître qui s'impatiente devant son élève ignare.
J'assume. Je suis membre du club des vieux cons avec palmes et fourragères (numéro de membre 150412 à jour de cotisation).

_________________
Le carnet du grincheux
Chroniques de misanthropie ordinaire
http://grincheux.de-charybde-en-scylla.fr/
http://loubardes.de-charybde-en-scylla.fr/

Le grincheux
Sage


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Jeu 19 Déc 2013 - 20:21

Je suis membre du club des vieux cons avec palmes

C'est dans les vieux pots qu'on fait la meilleure soupe...

Je continue la lecture des spécifications du langage que tu présentes sur ton blog... Intéressant.


_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Ven 20 Déc 2013 - 9:51

@Grincheux

Je sais maintenant que mes quelques connaissances sont bien insignifiantes comparées aux tiennes et ma position professionnelle très subalterne.

Je te présente donc mes respectueuses excuses pour le ton quelque peu "primesautier" utiliser ici à ton encontre.

Il reste que je souhaite continuer à partager (provoquer ?) une discussion à bâtons rompus sur l'informatique avec des gens de ton rang ou encore apporter une aide technique à des enseignants sur des petits projets.

En ouvrant ce fil, mon souhait est donc bien de parler autant de l'aspect technique de la programmation (comme développeur du Dimanche néanmoins diplômé du CNAM) ou sur les aspects cognitifs, sociologiques, politiques, c'est à dire philosophiques (comme enseignant) d'où mon intérêt pour des gens comme Bernard STIEGLER.

Je suis bien conscient que ma passion immodérée pour la res informatica perturbe  fortement le fil de mes propos    angedemon . Je me console en me disant que c'est un signe de jeunesse malgré la soixantaine qui approche à grands pas!

Je te remercie donc d'avoir fait l'effort de contribuer malgré ta trompeuse misanthropie.

Voici ce qu'ont suscité chez moi tes contributions:
- souvenir de jeunesse pour mes programmes en assembleur sur le Motorola 68000 des premiers Macintosh (http://goldencrystal.free.fr/M68kOpcodes.pdf).
- redécouverte des langages (cf http://fr.wikipedia.org/wiki/Portail:Programmation_informatique) en particulier S-expression
- réflexion:
1) La parole de Dieu:
"the art of computer programming", le bouquin qui contient la parole de dieu
2)
Gregory Chaitin sur Lisp :

« Malheureusement, alors que les langages de programmation gagnent en sophistication, ils sont de plus en plus le reflet de la complexité de la société humaine et du monde immense des applications logicielles. Ainsi, ils deviennent d'énormes boîtes à outils, comme des garages et des greniers chargés de plus de trente ans d'histoire ! A contrario, LISP est un langage de programmation d'une grande beauté mathématique ; il ressemble plus à un scalpel de chirurgien ou à un diamant affûté qu'à un garage à deux places encombrés de bricolages, où il ne reste plus de place pour une voiture.

LISP a un petit nombre de concepts élémentaires puissants, et tout le reste est construit au-dessus de ça, ce qui correspond à la façon de travailler des mathématiciens ; c'est à ça que ressemblent les théories mathématiques. Ces théories, les bonnes théories, consistent à définir quelques nouveaux concepts clefs, et à partir de là le feu d'artifice commence : elles révèlent de nouvelles allées, elles ouvrent la porte à des mondes radicalement nouveaux. LISP est comme ça aussi ; il est plus proche des maths que la plupart des langages de programmation. Du moins si vous éliminez les parties utiles qui ont été ajoutées, les ajouts qui ont fait de LISP un outil pratique. Ce qui reste si vous faites cela, c'est le LISP original, le cœur conceptuel de LISP, un cœur qui est un joyau de beauté mathématique et de beauté intellectuelle austère.
»

Merci pour cela!

_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par Bolzano le Ven 20 Déc 2013 - 10:52

Moi aussi, bien que plutôt largué, je suis avec intérêt ce fil, et je ne vois où placer ailleurs dans neoprofs l'exercice suivant :
Soient u et v deux mots (construits sur un alphabet quelconque). u et v commutent SSI il existe un mot w tel que u et v soient des puissances de w.
Il m'avait été soumis comme exemple de raisonnement par induction au sortir d'une khôlle par un prof d'info avec qui je discutais récurrence et induction et qui s'était un peu fâché quand je lui avais dit que j'assimilais les deux notions, me faisant remarquer que la récurrence avance en croissant tandis que l'induction va à l'envers. N'étant pas assez calé en info, la nuance m'avait paru artificielle.

J'ai cherché l'exo et la preuve la plus simple que j'aie trouvée utilise une récurrence, pas une induction. Des idées ?

Bolzano
Niveau 5


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Ven 20 Déc 2013 - 14:47

Facile (en trichant sur Internet...)


_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par Bolzano le Ven 20 Déc 2013 - 15:34

C'est de la récurrence, je cherchais une preuve (au moins aussi simple que celle-ci) par induction sur l'ensemble des mots. Mais en existe-t-il ?

Bolzano
Niveau 5


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par Zorglub le Ven 20 Déc 2013 - 17:51

Tiens, une question qui me travaille depuis longtemps et que j'avais résolue à l'époque par une pirouette.

Quelle idée d'algo pour résoudre le pb suivant bien banal ?

On dispose de n point définis par leurs coordonnées cartésiennes.
On définit un polygone à p côtés (pour simplifier non croisé mais pas obligatoirement convexe) par la succession ordonnée des coordonnées de ses sommets.

TAF : Déterminer les points qui sont à l'intérieur du polygone.

Zorglub
Habitué du forum


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par Le grincheux le Ven 20 Déc 2013 - 18:22

@Zorglub a écrit:Tiens, une question qui me travaille depuis longtemps et que j'avais résolue à l'époque par une pirouette.

Quelle idée d'algo pour résoudre le pb suivant bien banal ?

On dispose de n point définis par leurs coordonnées cartésiennes.
On définit un polygone à p côtés (pour simplifier non croisé mais pas obligatoirement convexe) par la succession ordonnée des coordonnées de ses sommets.

TAF : Déterminer les points qui sont à l'intérieur du polygone.

C'est l'enfance de l'art, ça  Razz 

On détermine les équations des côtés. On prend une demi-droite (quelconque) partant de ce point. S'il y a un nombre pair d'intersections avec les côtés, le point est à l'extérieur. Sinon, il est à l'intérieur.

Attention : si on tombe sur un sommet, on ne le compte pas (en fait, on le compte deux fois, ce qui revient au même). Si on tombe sur un segment confondu avec la demi-droite, idem (il faudrait le compter quatre fois).

Attention, je ne prétends pas que c'est le plus efficace, mais il fonctionne pour tous les polygones (et même pour les polyèdres).

Et pour ce genre de calculs, des langages fonctionnels sont vraiment efficaces.


Dernière édition par Le grincheux le Ven 20 Déc 2013 - 18:32, édité 1 fois

_________________
Le carnet du grincheux
Chroniques de misanthropie ordinaire
http://grincheux.de-charybde-en-scylla.fr/
http://loubardes.de-charybde-en-scylla.fr/

Le grincheux
Sage


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par Le grincheux le Ven 20 Déc 2013 - 18:31

Sinon, il y a plus rigolo. Considérons M le point en question est Pi, les points du polygone. En additionnant les angles (en radians ou en degrés, voire en grades, mais il faut rester cohérent) (Pi,P(i+1)) et en divisant par 2pi (ou 360, ou 400), si tu obtiens un entier, ton point est à l'intérieur du polygone.

Mais il faut gérer la précision des calculs en flottants !  diable diable 

_________________
Le carnet du grincheux
Chroniques de misanthropie ordinaire
http://grincheux.de-charybde-en-scylla.fr/
http://loubardes.de-charybde-en-scylla.fr/

Le grincheux
Sage


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par If_Then_Else le Ven 20 Déc 2013 - 19:46

Hello à tous,

Comme on est supposé donner quelques lignes de code, je vous propose la lecture de l' unit en Pascal : les commentaires en anglais spécifie l'algorithme utilisé (proche de celui évoqué en 1° par LeGrincheux ci-dessus)

unit PointAndPolygon;

interface

uses Windows;

function PointInPolygon(TestPolygon: array of TPoint; TestPoint : TPoint) : Boolean;

{The function has been developed by Philippe De Boe and Thérèse Hanquet,
Brussels, Belgium, for a custom cartography application.}

{It applies to polygons considered by Microsoft as ALTERNATE
http://msdn.microsoft.com/library/psdk/gdi/regions_2z8l.htm}

{The algorithm is based on a simple assumption:
if you draw the horizontal line on which the point is located,
and if you travel along this line,
if the point is inside the polygon,
you will cross the perimeter of the polygon an odd number of times
before reaching the point - and an odd number of times after.
If it is not inside the polygone,
you will not cross the perimeter of the polygon,
or you will cross it an even number of times before reaching the point
and an even number of times after}

{Of course this can also work with a vertical line but it can be less intuitive
to read because in some cases y coordinates may be oriented toward the top
and in other cases toward the bottom}

{Comments are welcome at therese.hanquet@skynet.be}

implementation

function PointInPolygon(TestPolygon: array of TPoint; TestPoint : TPoint) : Boolean;

var ToTheLeftofPoint, ToTheRightofPoint : Byte;
np : Integer;
OpenPolygon : Boolean;
XIntersection : Real;

begin
ToTheLeftofPoint := 0;
ToTheRightofPoint := 0;
OpenPolygon := False;

{tests if the polygon is closed}

if not ((TestPolygon[0].X=TestPolygon[High(TestPolygon)].X) and
(TestPolygon[0].Y=TestPolygon[High(TestPolygon)].Y)) then
OpenPolygon := True;

{tests for each couple of points to see if the side between them
crosses the horizontal line going through TestPoint}

for np := 1 to High(TestPolygon) do
if ((TestPolygon[np-1].Y <= TestPoint.Y) and
(TestPolygon[np].Y > TestPoint.Y)) or
((TestPolygon[np-1].Y > TestPoint.Y) and
(TestPolygon[np].Y <= TestPoint.Y))

{if it does}

then begin
{computes the x coordinate of the intersection}

XIntersection := TestPolygon[np-1].X +
((TestPolygon[np].X-TestPolygon[np-1].X)/
(TestPolygon[np].Y-TestPolygon[np-1].Y))
*(TestPoint.Y-TestPolygon[np-1].Y);

{increments appropriate counter}
if XIntersection < TestPoint.X then Inc(ToTheLeftofPoint);
if XIntersection > TestPoint.X then Inc(ToTheRightofPoint);

end;

{if the polygon is open, test for the last side}

if OpenPolygon then
begin
np := High(TestPolygon); {Thanks to William Boyd - 03/06/2001}
if ((TestPolygon[np].Y <= TestPoint.Y) and
(TestPolygon[0].Y > TestPoint.Y)) or
((TestPolygon[np].Y > TestPoint.Y) and
(TestPolygon[0].Y <= TestPoint.Y))
then begin
XIntersection := TestPolygon[np].X +
((TestPolygon[0].X-TestPolygon[np].X)/
(TestPolygon[0].Y-TestPolygon[np].Y))
*(TestPoint.Y-TestPolygon[np].Y);

if XIntersection < TestPoint.X then Inc(ToTheLeftofPoint);
if XIntersection > TestPoint.X then Inc(ToTheRightofPoint);
end;
end;

if (ToTheLeftofPoint mod 2 = 1) and (ToTheRightofPoint mod 2 = 1)
then Result := True else Result := False;

end;

end.

Voici la page des différentes fonctions en Pascal traitant de sujets graphiques (géométriques): http://www.efg2.com/Lab/Library/Delphi/Graphics/Math.htm

_________________
« On n'enseigne pas ce que l'on sait ou ce que l'on croit savoir : on n'enseigne et on ne peut enseigner que ce que l'on est.  »

If_Then_Else
Niveau 9


Revenir en haut Aller en bas

Re: Le coin des développeurs

Message par Le grincheux le Ven 20 Déc 2013 - 20:09

C'est illisible (et entre nous mal codé pour que ce soit efficace).

Par ailleurs, l'algorithme est faux. Les ToTheLeftofPoint et ToTheRightofPoint sont tous deux de même parité. Ou alors, il faut me montrer la tronche du polygone.

_________________
Le carnet du grincheux
Chroniques de misanthropie ordinaire
http://grincheux.de-charybde-en-scylla.fr/
http://loubardes.de-charybde-en-scylla.fr/

Le grincheux
Sage


Revenir en haut Aller en bas

Page 3 sur 6 Précédent  1, 2, 3, 4, 5, 6  Suivant

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum