<chat-de-sorciere>
Bonjour tout le monde, si il y a des utilisateurs de FreeBSD par ici, je les invite a jeter un coup d'oeil sur http://perso.wanadoo.fr/michael.grunewald/ j'ai mis en ligne trois ports
<chat-de-sorciere>
pour FreeBSD, qui n'ont pas encore été soumis au mainteneurs, parceque je voudrais un peu travailler dessus avant
<pnou>
heu t'es sûr de ton adresse ?
<chat-de-sorciere>
mais si vous voulez vous en servir (à vos risques et périls) allez-y
<chat-de-sorciere>
Ouais je suis sûr pourquoi ?
<chat-de-sorciere>
çTu n'obtiens rien ?
<pnou>
.ocaml List.fold_right (fun x -> x ^ " " ^ l) ["chameau"; "c'est";"un";"bot"] ""
<pnou>
.ocaml List.fold_right (fun x l -> x ^ " " ^ l) ["chameau"; "c'est";"un";"bot"] ""
<chameau>
chameau c'est un bot
<chat-de-sorciere>
ah ouais marrant
<pnou>
erreur wanadoo truc muche
<pnou>
page wanadoo inconnue
<chat-de-sorciere>
c'est marrant parceque de chez moi ça marche bien.
<chat-de-sorciere>
Enfin, ça donne la page.
<chat-de-sorciere>
Le serveur fait son job quoi ...
<pnou>
sous lynx ça passe
<pnou>
va comprendre Charles
jankr has joined #ocaml
<chat-de-sorciere>
C'est marrant ça ...
<pnou>
bon j'irai pas jusqu'à installer freebsd pour tester tes ports, je te fais confiance :)
<chat-de-sorciere>
Hier j'ai commencé à programmer un fond commun pour les protocoles texte de l'Internet genre CDDB, SMTP, NNTP, et peut-être aussi FTP
<pnou>
cool
<pnou>
ça manque de lib ocaml
<chat-de-sorciere>
Un peu
<pnou>
pis même la lib standard, elle fait un peu radin
<chat-de-sorciere>
oh attend y'a plein de trucs dedans.
<chat-de-sorciere>
quand-même.
<chat-de-sorciere>
Mais c'est plus branché algorithmique que lecture de mp3, c'est sûr.
<pnou>
mof
<pnou>
y a rien pour manipuler les graphes par exemple
<chat-de-sorciere>
Ah oui.
<chat-de-sorciere>
T'as essayé d'installer une de libs d'anum, comme psilab ?
<chat-de-sorciere>
Ben ça a l'air de faire un peu de tout, genre algèbre linéaire, des dessins,
<chat-de-sorciere>
un peu comme Scilab, maivec bien moins de trucs, mais c'est interfaçable avec ocaml.
<pnou>
ha ch'est bien cha
<chat-de-sorciere>
donc y'a un vrai langage qui permet d'écrire des programmes
<chat-de-sorciere>
ch'est malin, che chuis mort de rire
<pnou>
'tain c'est d'la balle de carotte attitioude psilab
<pnou>
bon remarque je me sers pas de ce genre de truc
<chat-de-sorciere>
j'ai bien envie d'essayer de l'installer, en plus y'a même un distribution bianire pour FreeBSD sur le site, mais je comprends pas pourquoi il n'a pas le port correspondant dans le porttrree de FreeBSD.
<pnou>
yapuka le faire :)
<pnou>
j'ai fait un truc sympa avec camlp4
<chat-de-sorciere>
c'est quoi ?
<chat-de-sorciere>
le truc ?
<pnou>
j'ai ajouté la définition des listes par compréhension comme dans haskell
<pnou>
let lx = [1;2;3]
<pnou>
let ly = [1;2]
<pnou>
let _ = ($ Printf.printf "(%d, %d)\n" x y |
<pnou>
x in lx with x = 2 and y in ly)
<pnou>
ça t'affiche tous les couples x y avec x qui appartient à lx et qui vaut 2 et y qui appartient à ly
<pnou>
le quicksort devient
<pnou>
let rec quicksort = function
<pnou>
[] -> []
<pnou>
| h :: t ->
<pnou>
quicksort ($ x | x in t with x < h) @
<pnou>
(h :: quicksort ($ x | x in t with x >= h))
<chat-de-sorciere>
T'as un prédicat sur la première liste et ça te fait une sorte de map sur le produit cartésien des deux ?
<chat-de-sorciere>
Il faut que j'apprenne à me servir de ce truc.
<pnou>
oué mais c'est pas forcément un produit cartésien
<pnou>
je peux écrire
<pnou>
ha
<pnou>
heu oui tu as compris
<chat-de-sorciere>
ouais, en fait ça filtre le produit cartésien.
<pnou>
voui
<chat-de-sorciere>
puis ça fait un map sur le résultat.
<pnou>
voui
<pnou>
je te montre le code généré pour la première version
<pnou>
avec lx et ly
<chat-de-sorciere>
oki
<pnou>
let _ =
<pnou>
List.map (fun x -> List.map (fun y -> Printf.printf "(%d, %d)\n" x y) ly)
<pnou>
(List.filter (fun x -> x = 2) lx)
<chat-de-sorciere>
plop
<pnou>
je trouve que ce genre de sucre manque un peu
<chat-de-sorciere>
oc, et tu peux mettre une garde qur chacune des deux listes ...
<chat-de-sorciere>
sur le langage ?
<chat-de-sorciere>
D'où l'intérêt de camlp4, mais peut-être faudrait-il un peu rassembler les modifications de chacun.
<pnou>
oui oui, une garde sur toutes tes listes
<pnou>
quand tu commences à utiliser plus de trois variables, ça devient complètement illisible avec des map
<pnou>
oui
<pnou>
par exemple françois pottier a fait une extension sympa pour les regexps
<pnou>
mais il ne l'a même pas packagé
<pnou>
et personne ne l'utilise
<pnou>
c'est dommage
<chat-de-sorciere>
ah ben voilà
<chat-de-sorciere>
ce serait peut-être pas mal de faire un eptit système q'instalaltion qui fasse un peu comme ocamlfind, ou un AMkefile bien fait, et puisse instalelr et compiler tout correctement avec aussi peu d'indications que possible.
<pnou>
héhé, je suis en train de faire ça avec un copain
<pnou>
enfin pour l'instant on fait des proto
<pnou>
c'est clair que ça manque énormément
<chat-de-sorciere>
ben j'ai un super makefile de lam ort qui tue et qui fait des trucs pacifistes aussi.
<pnou>
voui mais faut un système de package
<pnou>
faudrait un comprehensive ocaml archive network
<chat-de-sorciere>
make package tu veux dire ?
<pnou>
avec tout plein de package packagé d'une manière bien standard
<jankr>
looks like my plan to learn stuff by monitoring the conversation here won't work...
<pnou>
lol
<chat-de-sorciere>
au lieu d'avoir tout le monde qui pète son MAkefiel de la mort.
<pnou>
exactement chat-de-sorciere
<chat-de-sorciere>
Et pourrais y avoir un système d'upload de pqauets avec une interface web, pour les neuneuds et les flemmards ...
<pnou>
j'ai fait un stage à l'inria le mois dernier, et j'ai vu comment il bossait, il font des gros copiers coller de leur makefiles et ils modifient les trucs qui vont bien
<pnou>
j'ai trouvé ça un peu préhistorique
eivuokko has joined #ocaml
<chat-de-sorciere>
Mais c'est efficace.
<pnou>
jankr you will learn french :)
<pnou>
bof chat-de-sorciere
<chat-de-sorciere>
lets try in english,
<pnou>
yep
<chat-de-sorciere>
enfin fonctionnel, comme ocaml ;)
<chat-de-sorciere>
(les Cx Cv de MAkefiles)
<chat-de-sorciere>
still here jankr ?
<jankr>
yep
<pnou>
we are talking about a package system for ocaml
<pnou>
and a binary builder system
<jankr>
a combination of the ada and java package system would be nice :)
<chat-de-sorciere>
when it would be done, all developpers in the world could use each others software swithout a pain ,ad the BABEL tower will be put down, one more time.
<chat-de-sorciere>
I do not know nor about java nor ada.
<pnou>
i don't know java but gnatmake is exactly what i want
<chat-de-sorciere>
It maybe achieved without much pain when compiling strict ocaml applications, that do not rely on external C-library.
<pnou>
mmmmm not so easy
<pnou>
in theory it's impossible
<pnou>
because of side effect
<pnou>
we can't know in what order we must link object files
<pnou>
but it sounds reasonable to me not to handle such cases :)