12
votes

Analyser une chaîne de texte à f # -code

Comment puis-je prendre une chaîne de texte, censée être C # -Code, et l'analyser dans F # -Code, pour imprimer les résultats à l'écran?

Je suppose que cela serait résolu via une fonctionnalité de .NET, il peut donc être fait à travers F # elle-même ou c #.

De quelle manière est-ce probablement résolu sur tryfsharp.org ?


2 commentaires

Cela vaut peut-être la peine d'être regardé sur ce Question


Vous pouvez également utiliser f # codedom


3 Réponses :


0
votes

f # a un interprète FSI.exe qui peut faire cela que vous voulez. Je pense que cela a aussi une API.


0 commentaires

4
votes

Je suppose que cela serait résolu via une fonctionnalité de .NET, il peut donc être fait à travers F # elle-même ou c #.

Nope. F # fournit des installations de métaprogramming relativement apprivoisées. Vous devrez déchirer le code pertinent du compilateur F #.


2 commentaires

Ok, alors je sais qu'une moitié n'est pas possible. Qu'en est-il du C # -Part ou quelque chose dans le cadre .NET?


Non; Rien que le cadre ne sait que f # existe. Il n'y a pas d'API pour cela dans le produit, bien que tout le code source soit disponible pour que vous puissiez la construire vous-même. Je pense que dans la longue course, nous aimerions publier des échantillons qui montrent comment vous pouvez le faire, mais nous ne les avons pas encore préparés.



13
votes

Le souhaité peut être atteint à l'aide de F # Code Fournisseur . Un petit extrait annulable ci-dessous démontre les étapes requises. Il faut un code F # présumée arbitraire correct d'une chaîne et tente de le compiler dans un fichier d'assemblage. En cas de succès, il charge cela juste un montage synthétisé à partir du fichier dll code> et invoque une fonction connue à partir de là, sinon il montre quel est le problème de compiler le code.

Success: "I've been compiled on the fly!"


0 commentaires