#2101 Le 10/12/2010, à 20:45
- Elzen
Re : /* Topic des codeurs couche-tard [2] */
La réponse est juste un peu plus haut mais comme il s'agit d'alias, ce n'est évidemment pas un comportement par défaut
Hmm, je vois.
Pareil, c'est le genre de truc qui est sûrement très pratique, mais que je trouve quand même hyper moche.
En ce qui me concerne, je m'en servirais sûrement pas.
(Ou alors pas dans un shell, quoi. Ce genre de comportement (cd ou lecture par une autre appli juste avec le nom, sans rien devant) serait super cool pour un genre de navigateur de fichiers en ligne de commande, mais là, perso, j'trouve que ça va pas)
Ce que tu as définis pour lui dans le fichier de conf (bon ça se base sur l'extension et pas sur le type mime, mais c'est mieux que rien).
Chez moi ça lance mplayer sur les avi, xpdf sur les pdf, feh sur les images, etc.
Ouais bah comme je disais, pour moi, c'est le comportement d'un navigateur de fichiers, mais pas celui d'un interpréteur de commande. Or à moins que j'ai mal compris un truc, vous parlez d'un interpréteur de commandes, là.
Zut, je suis découvert /o\
Dernière modification par ArkSeth (Le 10/12/2010, à 20:48)
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#2102 Le 10/12/2010, à 20:47
- grim7reaper
Re : /* Topic des codeurs couche-tard [2] */
Ce genre de comportement (cd ou lecture par une autre appli juste avec le nom, sans rien devant) serait super cool pour un genre de navigateur de fichiers en ligne de commande, mais là, perso, j'trouve que ça va pas)
Ouais genre ranger, mais moi ça m'emmerde d'installer un navigateur de fichier rien que pour ça, donc si le shell le fait je prend .
Dernière modification par grim7reaper (Le 10/12/2010, à 20:56)
Hors ligne
#2103 Le 10/12/2010, à 20:55
- Elzen
Re : /* Topic des codeurs couche-tard [2] */
Ranger ? Connaît pas ce mot-là (Ça se voit dans ma chambre, d'ailleurs ^^")
'fin voilà, quoi. Je sais qu'entre le reste du monde et moi, c'est sûrement les plus nombreux qui ont raison, mais je trouve que c'est pas parce que c'est "pratique" que ça se justifie nécessairement (genre j'suis sûr que je peux trouver plein de gens prêts à affirmer que faire de l'héritage est pratique dans des cas où vous conviendriez avec moi que c'est conceptuellement aberrant. Pour moi c'est pareil.)
S'tu veux ouvrir un fichier/aller dans un répertoire avec un interpréteur de commandes, tu utilises une commande, si tu veux les ouvrir sans commande, tu n'utilises pas un interpréteur de commandes mais un navigateur de fichier.
Désolé
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#2104 Le 10/12/2010, à 20:56
- grim7reaper
Re : /* Topic des codeurs couche-tard [2] */
Ranger :)
Sinon, on peut faire le même reproche à Emacs (en bien pire).
S'tu veux ouvrir un fichier/aller dans un répertoire avec un interpréteur de commandes, tu utilises une commande, si tu veux les ouvrir sans commande, tu n'utilises pas un interpréteur de commandes mais un navigateur de fichier.
En règle général, je suis tout a fait d'accord avec ça. Là c'est différent car j'ai pas trop le choix : pas envie d'installer un navigateur de fichier graphique, et aucun de ceux en console ne me satisfait.
Je trouve lourd de lancer un autre programme pour faire ces choses là, et dans ce cas je ne trouve pas que c'est en conflit avec le rôle du shell (du moins, à défaut de me paraître normal ça ne me paraît pas aberrant).
Dernière modification par grim7reaper (Le 10/12/2010, à 21:02)
Hors ligne
#2105 Le 10/12/2010, à 21:00
- Pylades
Re : /* Topic des codeurs couche-tard [2] */
[…]
Ouais bah comme je disais, pour moi, c'est le comportement d'un navigateur de fichiers, mais pas celui d'un interpréteur de commande. Or à moins que j'ai mal compris un truc, vous parlez d'un interpréteur de commandes, là.
[…]
Mieux. Nous parlons d'un shell.
(Un interpréteur de commandes, c'est dash, par exemple.)
“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
Linus Torvalds – 12 janvier 2003
Hors ligne
#2106 Le 10/12/2010, à 21:07
- helly
Re : /* Topic des codeurs couche-tard [2] */
Merde quoi .
Je butte toujours sur l'exo 12 de euler, temps d'éxecution trop long, pourtant la fonction nombre de diviseurs est bien codée et marche sans problèmes…
Si tu trouves la faille :
--liste triangulaire
listeTriang :: (Integral a) => [a]
listeTriang = [(x*(x+1) `div` 2) | x <- [1..]]
-- Renvoie la liste des nombres premiers de 1 à n
primes :: (Integral a) => [a]
primes = sieve [2..]
where
sieve (p:xs) = p : sieve [x | x <- xs, rem x p /= 0]
-- Renvoie la liste des des facteurs premiers de nb
fp :: (Integral a) => a -> [a]
fp 1 = [1]
fp nb = fpFct nb [] 2
fpFct :: (Integral a) => a -> [a] -> a -> [a]
fpFct 1 liste p = liste
fpFct nb liste p
| (nb `rem` p == 0) = fpFct (nb `div` p) (liste++[p]) p
| otherwise = fpFct nb liste (head[x| x<- primes, x > p])
-- renvoie le nombre de diviseurs d'un nombre
nbDiviseurs :: (Integral a) => a -> a
nbDiviseurs nb = fctDiv (tail (fp nb)) 1 (head (fp nb)) 1
fctDiv :: (Integral a) => [a] -> a -> a -> a -> a
fctDiv [] total ptr cpt = (total*(cpt+1))
fctDiv (x:xs) total ptr cpt
| (x == ptr) = fctDiv xs total ptr (cpt+1)
| otherwise = fctDiv xs (total*(cpt+1)) x 1
-- Renvoie les nombres de diviseurs des nombres triangulaires
divTriang :: (Integral a) => [a]
divTriang = [y | (x,y) <- (zip (map (nbDiviseurs) listeTriang) listeTriang), x > 500 ]
Dernière modification par helly (Le 10/12/2010, à 21:09)
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#2107 Le 10/12/2010, à 21:07
- Elzen
Re : /* Topic des codeurs couche-tard [2] */
Sinon, on peut faire le même reproche à Emacs (en bien pire).
C'est aussi pour ça que je n'utilise pas Emacs ^^
Mieux. Nous parlons d'un shell.
Ouais, c'est vrai que le mot peut être prit autrement, Enlightenment et Windows Explorer sont aussi désignés comme ça
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#2108 Le 10/12/2010, à 21:11
- grim7reaper
Re : /* Topic des codeurs couche-tard [2] */
@helly : je pense que c'est ta décomposition en facteur premier qui est trop lente (ou alors ton crible dans la génération de primes).
Tu avais fait comment pour le problème 3 ?
Édit 1 : J'ai vérifié, c'est bien ça qui est lent. Après, est-ce que ça vient de l'algo de factorisation ou de la génération des nombres premiers il faut voir…)
Édit 2 : Bon après tests, il semblerait que ça soit ton algo de factorisation le plus gros goulot d'étranglement.
grim7reaper a écrit :Sinon, on peut faire le même reproche à Emacs (en bien pire).
C'est aussi pour ça que je n'utilise pas Emacs ^^
Moi c'est, entre autre, parce qu'il se configure en Lisp (j'ai du mal avec les langages de cette famille).
Dernière modification par grim7reaper (Le 10/12/2010, à 21:23)
Hors ligne
#2109 Le 10/12/2010, à 21:16
- Pylades
Re : /* Topic des codeurs couche-tard [2] */
[…]
Pylade a écrit :Mieux. Nous parlons d'un shell.
Ouais, c'est vrai que le mot peut être prit autrement, Enlightenment et Windows Explorer sont aussi désignés comme ça
Je voulais dire que ce n'est pas qu'un truc qui exécute bêtement des commandes. C'est un programme interactif, derrière lequel il y a un utilisateur. C'est cela un shell pour moi…
Mais bon, ça n'empêche pas dash de porter fièrement son sh à la fin…
“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
Linus Torvalds – 12 janvier 2003
Hors ligne
#2110 Le 10/12/2010, à 21:25
- helly
Re : /* Topic des codeurs couche-tard [2] */
@grim : Pour le 3, j'ai fait comme ça :
import Data.Int
-- Renvoie la liste des nombres premiers de 1 à n
primes :: (Integral a) => [a]
primes = sieve [2..]
where
sieve (p:xs) = p : sieve [x | x <- xs, rem x p /= 0]
-- Renvoie la liste des facteurs premiers·
-- Renvoie la liste des des facteurs premiers de nb
fp :: (Integral a) => a -> [a]
fp 1 = [1]
fp nb = fpFct nb [] 2
fpFct :: (Integral a) => a -> [a] -> a -> [a]
fpFct 1 liste p = liste
fpFct nb liste p
| (nb `rem` p == 0) = fpFct (nb `div` p) (liste++[p]) p
| otherwise = fpFct nb liste (head[x| x<- primes, x > p])
Ça donne le bon résultat en à peine 2 secondes.
Dernière modification par helly (Le 10/12/2010, à 21:27)
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#2111 Le 10/12/2010, à 21:31
- grim7reaper
Re : /* Topic des codeurs couche-tard [2] */
C'est quoi comme algo ?
Moi j'ai utilisé ça (le plus merdique apparement, mais aussi le plus simple) et ça a suffit (bon pour le 12 ça moulinais un peu mais j'était sous la minute pépère (en mode interpréteur).
Dernière modification par grim7reaper (Le 10/12/2010, à 21:43)
Hors ligne
#2112 Le 10/12/2010, à 21:38
- helly
Re : /* Topic des codeurs couche-tard [2] */
Tu veux dire comment je factorise en facteurs premiers ?
L'algo de helly :
Je prend le nombre et un compteur initialisé à 2.
Si le nombre est divisible par le compteur, je divise le nombre par le compteur, et j'ajoute le compteur à la liste des facteurs premiers.
Si le nombre n'est pas divisible, je passe le compteur au nombre premier suivant.
Et j'arrêtre quand le nombre == 1.
Jvais me pencher sur ton algo.
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#2113 Le 10/12/2010, à 21:44
- grim7reaper
Re : /* Topic des codeurs couche-tard [2] */
Bon profiling remis à jour (compilation en O2, ça change pas grand-chose ici)
total time = 76.88 secs (3844 ticks @ 20 ms)
total alloc = 444,777,880 bytes (excludes profiling overheads)
COST CENTRE MODULE %time %alloc
fpFct Main 99.7 89.8
primes Main 0.2 9.1
À titre de comparaison, moi j'obtient.
total time = 0.66 secs (33 ticks @ 20 ms)
total alloc = 107,080,144 bytes (excludes profiling overheads)
COST CENTRE MODULE %time %alloc
divisor Main 90.9 87.8
triangle Main 3.0 1.2
solution Main 3.0 8.5
primes Main 3.0 1.9
Sinon grosso modo ton principe est bon (c'est le même que moi), c'est la mise en œuvre qui est mauvaise.
Dernière modification par grim7reaper (Le 10/12/2010, à 21:47)
Hors ligne
#2114 Le 10/12/2010, à 21:53
- helly
Re : /* Topic des codeurs couche-tard [2] */
Tu peux pas me montrer ton code pour que je vois ça ?
Et c'est quoi le logiciel que tu utilises là ?
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#2115 Le 10/12/2010, à 21:58
- grim7reaper
Re : /* Topic des codeurs couche-tard [2] */
Tu peux pas me montrer ton code pour que je vois ça ?
La solution au 12 ou mon implémentation de l'algo de factorisation ?
Et c'est quoi le logiciel que tu utilises là ?
Je compile avec ghc en lui donnant les bonnes options puis je lance mon programme (là encore avec les bonnes options).
Plus d'info ici, je peux guère en dire plus car j'ai pas vraiment lu (j'avais déjà fait un peu de profiling en C donc là j'ai juste choppé la syntaxe pour gch mais faudra que je revienne lire plus en détail).
En résumé
ghc --make -prof -auto-all -O2 helly.hs
./helly +RTS -p -RTS
vim helly.prof
Le fichier helly.prof contient ce que j'ai posté + d'autres trucs plus détaillé.
Dernière modification par grim7reaper (Le 10/12/2010, à 22:03)
Hors ligne
#2116 Le 10/12/2010, à 21:59
- helly
Re : /* Topic des codeurs couche-tard [2] */
La solution au 12 ou mon implémentation de l'algo de factorisation ?
La totale, en effet ta solution au 12 .
C'est pas extra, mais je vois pas comment faire mieux.
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#2117 Le 10/12/2010, à 22:02
- grim7reaper
Re : /* Topic des codeurs couche-tard [2] */
Bah ton algo est bon, il donne la bonne solution .
Il ne te reste qu'a améliorer ton algo de décomposition.
Tu es sûr de vouloir voir ma solution ?
Dernière modification par grim7reaper (Le 10/12/2010, à 22:03)
Hors ligne
#2118 Le 10/12/2010, à 22:04
- helly
Re : /* Topic des codeurs couche-tard [2] */
Oui jsuis sûr, je le referai pas, mais pour le coup, je sèche.
Jvais bn, donc je me laisse quand même la nuit pour y refléchir .
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#2119 Le 10/12/2010, à 22:05
- grim7reaper
Hors ligne
#2120 Le 10/12/2010, à 22:15
- compte supprimé
Re : /* Topic des codeurs couche-tard [2] */
* Lagierl mange le BN
#2121 Le 10/12/2010, à 22:36
- Elzen
Re : /* Topic des codeurs couche-tard [2] */
Moi c'est, entre autre, parce qu'il se configure en Lisp (j'ai du mal avec les langages de cette famille).
Oh, ç't'assez marrant, le Lisp Il faudrait que je réessaye un peu, un de ces jours.
Et puis d'abord ('plus le lien de la VO, celle-ci fera l'affaire)
Je voulais dire que ce n'est pas qu'un truc qui exécute bêtement des commandes. C'est un programme interactif, derrière lequel il y a un utilisateur. C'est cela un shell pour moi…
Mais bon, ça n'empêche pas dash de porter fièrement son sh à la fin…
J'suis d'accord, mais c'est à ça que sert le qualificatif « de commandes » pour moi.
Un truc pas interactif, qui ne fait que lire un truc et le renvoyer, c'est juste un « interpréteur ». Un « interpréteur de commandes », c'est un truc qui réagit aux entrées de l'utilisateur. Enfin, j'crois. Maintenant que j'y pense, c'est quand même plutôt naze, comme appellation ^^
Dernière modification par ArkSeth (Le 10/12/2010, à 22:37)
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#2122 Le 10/12/2010, à 22:43
- grim7reaper
Re : /* Topic des codeurs couche-tard [2] */
@ArkSeth : tshirtman me l'avais déjà posté en VO dans ce topic (mais on parlait de Perl je crois). Ouais, nan le Lisp j'accroche pas. Autant j'aime bien le fonctionnel que le Lisp non (cela dit, j'ai peut-être été traumatisé par le Scheme).
En fait, quand j'y réfléchis je crois que je suis réfractaire au langage avec typage dynamique (Perl étant le seul de cet catégorie que j'utilise).
Hors ligne
#2123 Le 10/12/2010, à 23:17
- Rolinh
Re : /* Topic des codeurs couche-tard [2] */
(cela dit, j'ai peut-être été traumatisé par le Scheme)
On dit Racket maintenant
Hors ligne
#2124 Le 10/12/2010, à 23:19
- samυncle
Re : /* Topic des codeurs couche-tard [2] */
Hello world
Hors ligne
#2125 Le 10/12/2010, à 23:19
- grim7reaper
Re : /* Topic des codeurs couche-tard [2] */
grim7reaper a écrit :(cela dit, j'ai peut-être été traumatisé par le Scheme)
On dit Racket maintenant
Nan, le Scheme n'est pas mort.
J'en ai fait l'an dernier
Hors ligne