Différences significatives entre F# et Clojure

quelles sont les différences les plus significatives entre le F# et le Clojure ?

qui construit A F # quel Clojure N'a pas et vice versa?

est-ce que F# a des macros?

25
demandé sur Brandon Wamboldt 2009-05-27 15:05:37

7 réponses

la plupart des différences proviennent du fait que F# descend de ML tandis que clojure descend de lisp .

Donc F# est un plus ML/OCaml/Haskell sentir avec l'accent sur:

  • typage statique
  • type inférence
  • pattern matching

tandis que clojure a plus D'une sensation de Lisp avec emphase le:

  • s-expressions
  • macros
  • fermetures

aussi comme Brian l'a noté, F# est une langue.net tandis que clojure est une langue JVM de sorte que chacun aura accès à un vaste mais différent ensemble de bibliothèques.

56
répondu Aaron Maenpaa 2009-05-27 11:24:38

Clojure est une langue de la famille lisp-1. F# n'est pratiquement OCaml adopté .net plate-forme.

8
répondu Marko 2009-06-03 12:00:38

une différence clé est que F# est un langage.net, alors que Clojure fonctionne sur une JVM. Ainsi, les déploiements et les plateformes supportées seront différents.

notez que F# est supporté par mono, cependant.

comme pour les macros, je pense que vous n'avez pas de chance .

6
répondu Brian Agnew 2017-05-23 12:25:33

on dirait qu'il y a un peu d'effort pour courir Clojure sur le CLR. Semble très prometteur.

http://github.com/richhickey/clojure-clr

6
répondu Alex Beynenson 2009-12-22 18:02:07

ils sont tous les deux premier fonctionnel langages de programmation, mais leurs systèmes de type sont très différents. F# est un langage fortement typé et Clojure est un langage dynamiquement typé et donc

  1. Boumbles réponse à Ce qu'est la la Différence entre une Forte vs Typage statique et faible vs. dynamique Dactylographie ;
  2. haylem réponse à Dynamique vs Statique tapé langue Etudes ; ou
  3. Joey Adams question Quoi de mieux pour le prototypage: statiquement typé langue, ou dynamiquement typés un?

peut aider à répondre à "quelles sont les différences les plus importantes entre le F# et Clojure?". Notez cependant que le débat entre "static typing" et "dynamic typing" est long et peut donc sembler religieux.

3
répondu dumbledad 2017-05-23 12:10:25

F # correspond en réalité à Scala sur JVM. La chose la plus proche de Clojure sur la plate-forme.net est IronScheme.

2
répondu Nemanja Trifunovic 2009-05-27 18:58:55

si vous voulez des macros, vous pouvez l'utiliser avec Boo ou Nemerle .

2
répondu dotneter 2009-05-27 20:09:00