2011-03-03 1 views
5

Est-ce que leurs avantages à C# ou à F # rendraient ce langage plus approprié pour manipuler des graphes énormes?Quelle langue serait plus appropriée que l'autre pour manipuler des graphes énormes, F # ou C#?

+2

Je ne pense pas que le langage soit si important. Peut-être serait-il préférable de se concentrer sur les algorithmes ... – thedev

+1

Si vous parliez de manipulation d'arbres, je recommanderais certainement F #. Cependant, la manipulation graphique est une bête différente. Voir ici pour quelques idées: http://lambda-the-ultimate.org/node/2933#comment-43367 – wmeyer

+1

@closers, je ne pense pas que ce soit subjectif * et * argumentatif. Il pourrait y avoir de très bonnes raisons d'utiliser l'un ou l'autre. – Benjol

Répondre

13

Aucune. Les deux C# et F # sont d'excellents langages qui permettent d'examiner de manière efficace de grandes structures de données. Pratiquement toute solution codée dans une langue pourrait être codée dans l'autre. Certes, il y aurait quelques différences syntaxiques et la construction occasionnelle du langage qui ne porte pas proprement entre les deux. Mais aucune langue n'a un avantage inhérent dans ce domaine. Au lieu de me concentrer sur le langage, je me concentrerais sur l'algorithme. C'est beaucoup plus que la langue qui déterminera l'efficacité de votre programme.

1

Ces deux compilations seront compilées avec le même ensemble d'instructions MSIL. Il peut y avoir une différence sémantique au niveau IL entre l'algorithme F # le plus propre et l'algorithme C# le plus propre, mais ce ne serait pas significatif.

Comme l'a dit JaredPar, les deux sont également capables de traverser efficacement de grands graphiques de données.

+0

-1: "Les deux compileront au même ensemble d'instructions MSIL". Peu probable car F # cible ILX alors que C# ne cible que la vanilla IL. Les appels de queue sont l'exemple le plus évident d'une instruction IL générée par F # mais pas C#. Inversement, C# a 'goto' ... –

Questions connexes