Est-ce que quelqu'un a eu une chance de creuser dans comment F# Units of Measure travail? S'agit-il simplement de chicaneries basées sur des types, ou y a-t-il des types de CLR qui se cachent sous qui pourraient (potentiellement) être utilisés à partir d'autres langages .net? Cela fonctionnera-t-il pour n'importe quelle unité numérique, ou est-il limité aux valeurs en virgule flottante (qu'est-ce que tous les exemples utilisent)?Comment fonctionnent les unités de mesure F #?
Répondre
Selon un response sur le prochain article de blog lié, ils sont un mécanisme purement statique dans le compilateur F #. Il n'y a donc pas de représentation CLR des données des unités.
Il n'est pas tout à fait clair si cela fonctionne actuellement avec des types non flottants, mais du point de vue du système de type, cela est théoriquement possible.
Voir le dernier article de blog par Andrew Kennedy (dans la réponse ci-dessous), UOM sont disponibles pour tout type numérique, ainsi que des types composites. – Benjol
Le meilleur endroit (et je pense que c'est officiel) pour le savoir est sur le blog d'Andrew Kennedy.
Voici les publications pertinentes (en cours).
- Units of Measure in F#: Part One, Introducing Units
- Units of Measure in F#: Part Two, Unit Conversions
- Units of Measure in F#: Part Three, Generic Units
- Units of Measure in F#: Part Four, Parameterized Types
Comme je l'ai dit dans le poste que votre answerer mentionné, cela est certainement quelque chose que vous ne pouvez pas faire en C# (bien que je souhaite que vous pourriez).
- 1. Comment faire pour supprimer génériquement F # Unités de mesure
- 2. F # Unités de mesure, des problèmes de généricité 2
- 3. F # Unités de mesure, des problèmes avec généricité
- 4. Dans quelles unités de mesure stockez-vous les données d'ingénierie?
- 5. F # Unités de mesure ... Existe-t-il un exemple de TEMPS?
- 6. F # Unités de mesure - 'levage' des valeurs à flotter <something>
- 7. unités de Réutiliser mesure par rapport à différents types
- 8. Conversion entre différentes unités de mesure en SQL (en Access)
- 9. Comment puis-je obtenir le paramètre "Unités de mesure" de OS X?
- 10. Remplacer les unités de fonction
- 11. Comment fonctionnent les applications Facebook?
- 12. Comment fonctionnent les outils d'analyse Web?
- 13. Comment fonctionnent les cartes glissantes?
- 14. Comment fonctionnent les instructions préparées?
- 15. Comment fonctionnent les classes python?
- 16. Comment fonctionnent les méthodes de requête d'attribut?
- 17. Conversion d'unité de mesure
- 18. Comment résoudre les erreurs de référence de type F #?
- 19. Comment fonctionnent les contextes OpenGL et les contextes de périphériques?
- 20. Imprimer unités de coordonnées .net
- 21. Comment fonctionnent les champs du modèle Django?
- 22. comment les modèles fonctionnent sur wordpress?
- 23. Comment fonctionnent les vidéos en streaming?
- 24. Comment les redirections .htaccess fonctionnent-elles?
- 25. Comment fonctionnent les événements dans Java Swing?
- 26. Comment fonctionnent les constructeurs d'interface graphique?
- 27. F # Ununit - reunit dans une fonction
- 28. Comment fonctionnent les applications de test de RAM? C# Exemple?
- 29. F # lambdas dans les dossiers
- 30. F # - Afficher les résultats complets dans F # fenêtre interactive
Jetez un oeil à la calculatrice Frink et au langage de programmation Frink. –