Articles of f #

Utilisation de `inline` dans F #

Le mot-clé inline dans F # me semble avoir un objective quelque peu différent de celui auquel je suis habitué par exemple en C. Par exemple, il semble affecter le type d’une fonction (qu’est-ce qu’un “paramètre de type résolu statiquement”? types résolus statiquement?) Quand devrais-je utiliser inline fonctions en inline ?

Dans quels domaines F # n’a-t-il aucun sens en termes d’utilisation?

Don Syme, dans sa conférence SPLASH, dit que F # n’est PAS destiné à remplacer C # même s’il a les capacités générales. Il continue en disant qu’il y a des domaines où l’utilisation de F # n’a aucun sens, mais ne développe pas la thèse. Quelqu’un peut-il s’il vous plaît me dire quelles zones […]

Est-ce que F # est vraiment plus rapide qu’Erlang aux processus de frai et de mise à mort?

Mis à jour: Cette question contient une erreur qui rend le test sans signification. Je vais essayer un meilleur benchmark comparant la fonctionnalité de base de concurrence de F # et d’Erlang et me renseigner sur les résultats dans une autre question. J’essaie de comprendre les caractéristiques de performance d’Erlang et F #. Je trouve […]

F # vs OCaml: débordement de stack

J’ai récemment trouvé une présentation sur F # pour les programmeurs Python , et après l’avoir regardée, j’ai décidé de mettre en œuvre une solution au “casse-tête de fourmi” par moi-même. Il y a une fourmi qui peut circuler sur une grid plane. La fourmi peut se déplacer d’un espace à la fois gauche, droite, […]

Quel est l’équivalent en F # du mot-clé par défaut C #?

Je cherche l’équivalent du mot clé default C #, par exemple: public T GetNext() { T temp = default(T); … Merci

F # définissant / utilisant un type / module dans un autre fichier du même projet

J’espère que ce sera facile. J’ai un projet F # (dernier F # CTP) avec deux fichiers (Program.fs, Stack.fs). Dans Stack.fs j’ai un simple espace de noms et définition de type Stack.fs namespace Col type Stack= … Maintenant, j’essaie d’inclure l’espace de noms dans Program.fs en déclarant open Col Cela ne fonctionne pas et me […]

Quelles sont les utilisations pratiques du style applicatif?

Je suis programmeur Scala, j’apprends Haskell maintenant. Il est facile de trouver des cas d’utilisation pratiques et des exemples concrets pour les concepts OO, tels que les décorateurs, les schémas de stratégie, etc. Les livres et les interwebs sont remplis. Je me suis rendu compte que cela n’était pas le cas pour les concepts fonctionnels. […]

Quand utiliser une séquence dans F # par opposition à une liste?

Je comprends qu’une liste contient des valeurs et une séquence est un alias pour IEnumerable . Dans le développement pratique de F #, quand devrais-je utiliser une séquence plutôt qu’une liste? Voici quelques raisons pour lesquelles je peux voir une séquence mieux: Lors de l’interaction avec d’autres langages ou bibliothèques .NET nécessitant IEnumerable . Besoin […]

Comment rassembler des tableaux multidimensionnels

Nous avons du code interop qui implique des masortingces. J’essayais d’appeler la DLL native et pour la plupart, cela fonctionne de manière très fiable. Je me base sur le regroupement par défaut de .net , en évitant les pointeurs non gérés et en utilisant la plupart du temps des tableaux .net, et peut-être une byref […]

Pourquoi l’inférence de type de F # est-elle si inconstante?

Le compilateur F # semble effectuer une inférence de type d’une manière (assez) ssortingcte de haut en bas, de gauche à droite. Cela signifie que vous devez faire des choses comme mettre toutes les définitions avant leur utilisation, l’ordre de compilation des fichiers est important, et vous avez tendance à réorganiser les choses (via |> […]