Le concours de programmation ICFP 2001 est lancé. Vous avez jusqu'à dimanche 17h (ou vendredi 17h) pour faire un compresseur de pages de simili-html. Le programme doit marcher en un temps limité (temps horloge murale, pas CPU) et sur des entrées de taille arbitraires. 1000$US pour le premier prix.
Et vous, vous prendriez quoi comme langage ?
Aller plus loin
# Langage ?
Posté par Anonyme . Évalué à -1.
Ben quoi, j'ai dit une connerie ?
<-1>
[^] # Re: Langage ?
Posté par Anonyme . Évalué à 0.
[^] # Re: Langage ?
Posté par Anonyme . Évalué à 0.
[^] # Re: Langage ?
Posté par Dugland Bob . Évalué à 1.
Le perl aussi c'est pas mal, tu peux trouver plein d'outils dans cpan.
[^] # Re: Langage ?
Posté par kangs . Évalué à -1.
Il est question de temps limité :)
-1
[^] # Re: Langage ?
Posté par Dugland Bob . Évalué à 1.
Donc, le réponse est délicate, tu produit du code très rapidement et très puissant, mais il est plus lent sur les truc de bas niveau. La feinte c'est de générer du code C à partir de tes classes.
[^] # Re: Langage ?
Posté par kangs . Évalué à 1.
du C ?
Je n'ai eu qu'un bref apercu de smalltalk, mais
une des caractérisques majeur de ce langage c'est
la possibilité de changer (modifier/retirer/
ajouter) des modules logiciel dynamiquement, non ?
En C ce n'est pas possible ?
[^] # Re: Langage ?
Posté par Dugland Bob . Évalué à 1.
Un peu de vocabulaire, en ST, y'a pas de compilateur, c'est un framework complet, l'interprêteur est un module parmis tant d'autres, comme l'editeur etc ...
oui, la plupart des implémentatins de ST sont faites en ST, on génère un petit bout de C qui va démarrer la machine virtuelle (c'est juste un bootstrap). Le vrai problème, c'est d'avoir le module de génération de C (il est dans Squeak par défaut mais il n'est pas donné avec VisualWorks par ex)
L'intérêt de ST c'est qu'il permet de faire des programmes de très haut niveau d'abstraction simplement, et qu'il est multiplateforme, le chargement plus ou moins dynamique des modules n'est qu'un aspect technique.
En C s'est différent, le programme n'existe qu'à partir du moment où il est compilé, en ST c'est compilé au fur et à mesure (qd tu fait accept).
[^] # Re: Langage ?
Posté par kadreg . Évalué à -1.
Vive virtua tefal, le specialiste du recuit simulé qui ne colle pas !
[^] # Re: Langage ?
Posté par Dugland Bob . Évalué à -1.
[^] # Re: Langage ?
Posté par Michel TISON . Évalué à -1.
Allez hop (-1)
# What a question
Posté par Anonyme . Évalué à 0.
[^] # Re: What a question
Posté par Anonyme . Évalué à 0.
[^] # Re: What a question
Posté par Eudoxe . Évalué à 1.
[^] # Re: What a question
Posté par Anonyme . Évalué à 0.
Ce que t'as peut etre pas vu, c'est que l'an dernier, la team qui a gagné avait en son sein Jerome Vouillon... et bon.. quand tu connais le bonhomme, ca n'a rien d'etonnant.
Ce qu'il faut aussi préciser c'est que Vouillon a codé le O de OCaml, alors c'est normal qu'il maitrise le langage.
[^] # Re: What a question
Posté par Anonyme . Évalué à 0.
Par contre, je suis d'accord avec toi, étant aussi, proOCaml. Je pense que les gens qui faisaient parties des équipes OCaml devait avoir un niveau supérieur aux autres.
Petite anecdote:
L'année derniere les 2 premiers en OCaml,
l'année d'avant premier en OCaml.. ;)
[^] # Re: What a question
Posté par Anonyme . Évalué à 0.
Sinon pour le O de OCaml, je croyais que c'etait Didier Remy, mais bon.
[^] # Re: What a question
Posté par mooh . Évalué à 1.
c'est Jerome Vouillon, sous la direction de Remy, qui a principalement codé le O de OCaml.
Leroy est le mainteneur, et c'est aussi celui qui, avec Pierre Weis est le principal architecte de Caml.
voila.
[^] # Re: What a question
Posté par Anonyme . Évalué à 0.
[^] # Re: What a question
Posté par Anonyme . Évalué à 0.
tu en payes/payeras des impôts...
[^] # Re: What a question
Posté par seatrend . Évalué à 1.
type de problemes non ? (grammaires...)
J'ai bien envie de m'y remettre pour mes vacances
mais il y a une version pour GNU/Linux ?
[^] # Re: What a question
Posté par mooh . Évalué à 1.
bon, voila l'url qu'il te faut :
http://www.ocaml.org/ocaml/distrib.html(...)
il y a pas mal de ressources on-line, tu trouveras sans probleme de la doc (commence par le site www.ocaml.org) pour faire ce que tu veux.
[^] # Re: What a question
Posté par Anonyme . Évalué à 0.
[^] # Re: What a question
Posté par Heriard Samuel . Évalué à 1.
euh... pour information, le w4c n'existe pas et SML/NG est un jeu de mot avec SML/NJ (Standard ML of New Jersey, un dialect de ML), donc je doute fort que l'on retrouve le code du gagnant dans un téléphone wap d'ici longtemps :-)
De plus le compilo ocaml peut aussi produire du bytecode, aussi portable que celui de Java, plus rapide et moins gourmand en mémoire. Qu'est-ce que ce serait cool de pouvoir programmer son téléphone portable en ocaml !
[^] # Re: What a question
Posté par kangs . Évalué à 1.
SE/machine sur lesquel ont été portés les machines
virtuelles JAVA.
Si il n'existe pas de machine virtuelle pour le
byte code ocaml, ca va être dure de le lancer. A
moins que le byte code soit du byte code JAVA ?
[^] # Re: What a question
Posté par Heriard Samuel . Évalué à 1.
Il existe un runtime pour le bytecode ocaml pour presques tous les unix, windows, beos, macos et meme une implémentation en Java !
[^] # Re: What a question
Posté par Dugland Bob . Évalué à -1.
Est-ce qu'il y a moyen de faire une implémentation de SmallTalk en Ocaml qui tournera en Java sur un mainframe IBM ?
Qqun à une idée des perf (4 bytecodes enpilés, ça doit donner !)
-1 ça pue comme remarque !
[^] # Re: What a question
Posté par Anonyme . Évalué à 0.
# rafale de questions à propos des langages fonctionnels
Posté par Anonyme . Évalué à 0.
Vous avez des exemples de langages fonctionnels ?
C'est quoi l'avantage d'un langage fonctionnel sur un langage non fonctionnel ?
Peut on avoir des langages fonctionnels objets et des langages fonctionnels "non objets" ?
Un chien ?
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Anonyme . Évalué à 0.
Lisp, Scheme, Haskell ... et Objective Caml bien sûr
Peut on avoir des langages fonctionnels objets
Objective Caml, comme son nom l'indique a des objets.
Voilà, pour les autres questions, d'autres répondront mieux que moi je pense.
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Anonyme . Évalué à 0.
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Anonyme . Évalué à 3.
2) Lisp, OCaml, Haskell etc.
3) C'est pas vraiment un probleme "d'avantage" , c'est un type de programmation.
Si tu est bourrin, fais de l'imperatif, si tu est fin , fais du fonctionnel :)
l'exemple typique c'est ca (grossier je sais mais bon)
imperatif : tu codes la fonction "factorielle" a l'aide d'une boucle
fonctionnel : tu utilises la recursivité
4) Le Haskell est fonctionnel et objet, OCaml aussi evidemment. Lisp est fontionnel sans etre objet (je parle pas de CLOS).
5) Par contre pour le chien faut que je me renseigne, mais il me semble que oui, surtout en été.
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Anonyme . Évalué à 0.
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Anonyme . Évalué à 0.
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Anonyme . Évalué à -1.
On ne peut opposer récursivité et boucle, ce sont des constructions équivalentes.
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par mooh . Évalué à 1.
Disons que qu'une expression recursive peut *toujours* etre exprimée a l'aide d'une boucle, a condition que ce ne soit pas une boucle FOR.
Dans ce cas précis (recursivité/boucle for) il y a une opposition.
C'est d'ailleurs ce qu'Ackermann a prouvé avec sa celebre fonction.
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Anonyme . Évalué à 0.
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Anonyme . Évalué à 0.
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Anonyme . Évalué à 0.
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Anonyme . Évalué à 0.
la solution récursive pour le 3) est en fait bourrine car factorielle n'est pas récurtive terminale donc ça va vite mener à un débordement de pile : (j'ai remplaçé * par + car facterielle de 100000 ça tient pas en 31 bits)
Objective Caml version 2.01
# let rec f = function 0 -> 0 | n -> n + f (n - 1) ;;
val f : int -> int = <fun>
# f 100000 ;;
Stack overflow during evaluation (looping recursion?).
# let f' n = let s = ref 0 in for i = 1 to n do s := i + !s done ; !s ;;
val f' : int -> int = <fun>
# f' 100000 ;;
- : int = 705082704
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Vivi (site web personnel) . Évalué à 1.
Objective Caml version 3.02
# let rec f acc = function 0 -> acc | n -> f (acc + n) (n - 1) ;;
val f : int -> int -> int = <fun>
# let f' = f 0 ;;
val f' : int -> int = <fun>
# f' 100000 ;;
- : int = 705082704
[^] # Re: rafale de questions à propos des langages fonctionnels
Posté par Dugland Bob . Évalué à 1.
# fr ?
Posté par Anonyme . Évalué à -1.
[^] # Re: fr ?
Posté par Anonyme . Évalué à 0.
La traduction d'un document ne prend pas 30 sec mais au minimum 1h si le document est petit. Il faut donc avoir le temps, il faut aussi demander l'autorisation de l'auteur, etc...
LinuxFR est un site gratuit, géré par des benevoles, tu n'as donc rien à reclamer.
Si tu penses qu'il faudrait traduire les documents, propose tes services à LinuxFR.
[^] # Re: fr ?
Posté par Anonyme . Évalué à -1.
Tout le monde n'est pas communiste comme la societe linux: faudrait me payer pr traduire.
Et s'il rale car cen US c surement car c une tanche en anglais
enfin que je dis linuxfr je parle de toollinux
[^] # Re: fr ?
Posté par Ramón Perez (site web personnel) . Évalué à -1.
On parlait de bénévole, ne confonds pas tout...
# python
Posté par Pierre Tramal (site web personnel) . Évalué à 1.
[^] # Re: python
Posté par Pierre Tramal (site web personnel) . Évalué à 1.
# Ne vous fatiguez pas trop sur le choix du langage
Posté par Anonyme . Évalué à 0.
Ce qui est plus important c'est d'avoir une bonne représentation intermédiaire qui permette de faire
facilement des optimisations aisement !
Trouver des heuristiques pour les problèmes exponentiels est également important vu la limitation en temps !
[^] # Re: Ne vous fatiguez pas trop sur le choix du langage
Posté par Dugland Bob . Évalué à 1.
Mais ça me paraît une solution raisonnable ... Trémeaux ? Trémeaux .... ?
où es-tu ?
Bisou à S. Gire de l'UBO.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.