Précédent   Forum du club des développeurs et IT Pro > Autres langages > Langages fonctionnels > F#
F# Forum d'entraide sur la programmation en langage fonctionnel F#
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 21/05/2009, 23h19   #1
LLB
Membre Expert
 
Inscription : mars 2002
Messages : 962
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 962
Points : 1 148
Points : 1 148
Par défaut F# 1.9.6.16 publié

C'est enfin sorti !

Visual Studio 2010 Beta1 vient d'être publié et il inclut la toute dernière version de F#. Parmi les nouveautés :
  • F# peut utiliser .NET 4.0
  • #light (utilisation de l'indentation) est enfin mis par défaut !
  • On peut définir des méthodes variadiques (donc le nombre d'arguments n'est pas fixé - params en C#)
  • On peut utiliser les unités de mesure sur les entiers
  • On peut définir ses propres suffixes sur les types numériques. Par exemple, 123X est du sucre pour NumericLiteralX.FromInt32(123)
  • Beaucoup de nettoyage dans la bibliothèque standard. En particulier, il n'y avait pas de cohénce dans le nommage avant (sumBy, mais fold_left). Maintenant, (presque) tous les underscores ont disparu. A noter que fold_left -> fold et fold_right -> foldBack
  • Pas mal d'ajustements avec .NET 4, de nouvelles fonctions (Array.Parallel.map, Array.Parallel.choose, Array3D, Array4D
  • Des optimisations un peu partout
  • Voir les notes détaillées

:)
LLB est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2009, 14h50   #2
alex_pi
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
Citation:
Envoyé par LLB Voir le message
Parmi les nouveautés :
  • ...
  • On peut utiliser les unités de mesure sur les entiers
  • ...
Ca c'est sexy
  Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2009, 14h57   #3
gorgonite
Rédacteur/Modérateur

 
Avatar de gorgonite
 
Homme Nicolas Vallée
Ingénieur d'études
Inscription : décembre 2005
Messages : 9 963
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Vallée
Âge : 28
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études
Secteur : Transports

Informations forums :
Inscription : décembre 2005
Messages : 9 963
Points : 18 158
Points : 18 158
pas cool...
Citation:
F# binaries compiled with this new release are incompatible with binaries from previous releases, so must be recompiled. Binary compatibility for F# is an aim of the RTM release of Visual Studio 2010.
et est-ce que fslex et fsyacc ont enfin été correctement intégrés dans les projets F# sous VS ?
__________________
Evitez les MP pour les questions techniques... il y a des forums
Contributions sur DVP : Mes Tutos | Mon Blog
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2009, 15h20   #4
alex_pi
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
Citation:
Envoyé par LLB Voir le message
Beaucoup de nettoyage dans la bibliothèque standard. En particulier, il n'y avait pas de cohénce dans le nommage avant (sumBy, mais fold_left). Maintenant, (presque) tous les underscores ont disparu. A noter que fold_left -> fold et fold_right -> foldBack
Est ce que ça veut dire qu'ils ont complètement abandonné une des idées du début qui était qu'un code OCaml copié collé dans F# compilait sans problème ?
  Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2009, 15h32   #5
gorgonite
Rédacteur/Modérateur

 
Avatar de gorgonite
 
Homme Nicolas Vallée
Ingénieur d'études
Inscription : décembre 2005
Messages : 9 963
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Vallée
Âge : 28
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études
Secteur : Transports

Informations forums :
Inscription : décembre 2005
Messages : 9 963
Points : 18 158
Points : 18 158
Citation:
Envoyé par alex_pi Voir le message
Est ce que ça veut dire qu'ils ont complètement abandonné une des idées du début qui était qu'un code OCaml copié collé dans F# compilait sans problème ?
ben ça n'a jamais vraiment marché... sauf sur des exemples très basiques


déjà ça coinçait quand on utilisait des modules
__________________
Evitez les MP pour les questions techniques... il y a des forums
Contributions sur DVP : Mes Tutos | Mon Blog
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2009, 18h42   #6
LLB
Membre Expert
 
Inscription : mars 2002
Messages : 962
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 962
Points : 1 148
Points : 1 148
Citation:
Envoyé par alex_pi Voir le message
Est ce que ça veut dire qu'ils ont complètement abandonné une des idées du début qui était qu'un code OCaml copié collé dans F# compilait sans problème ?
Non, c'est toujours d'actualité. Il y a deux objectifs :

- faire évoluer F# comme langage à part entière. Ce serait dommage que la
compatibilité avec Caml bloque certaines évolutions et fige certaines
choses. Au niveau des conventions de nommage, la bibliothèque manquait
vraiment de cohérence, c'était une sorte de grand-écart entre deux
mondes. Je suis content du choix, car c'était celui que j'avais proposé.

- garder une certaine compatibilité avec Caml. La syntaxe de Caml est
toujours comprise, mais si certaines constructions sont déconseillées
dans du F# pur (par exemple, le "for .. = .. to"). Il y a aussi une
bibliothèque de compatibilité où l'on peut retrouver pervasives.ml et
les autres. Note que le compilateur possède toujours une option
-mlcompatibility.

La compatibilité OCaml n'a jamais été parfaite, ça n'a jamais été le but.
Certaines fonctionnalités ne sont absolument pas prévues (système objet
Caml, camlp4, foncteurs, arguments optionnels sur les fonctions...). Mais,
si l'on souhaite faire du code portable, c'est tout à fait possible. C'est
une contrainte, mais c'est pas la mort : jusqu'à une période récente, le
compilateur F# pouvait être compilé à la fois par OCaml et F#.

A priori, la compatibilité OCaml devrait rester en l'état. Je pense pas
qu'il y aura d'amélioration sensible, mais elle ne sera pas non plus
détériorée.
LLB est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 18h47.


 
 
 
 
Partenaires

Hébergement Web