Я просто хочу указать, что это вопрос не в обратном направлении
Лучший подход для проектирования библиотек F # для использования как из F #, так и для С#
Здесь я не спрашиваю, как создать функциональную библиотеку, написанную на С#, которая будет использоваться в обоих мирах.
Я хотел бы знать хорошие практики, на что выбор дизайна охватывает или избегать, чтобы получить разумный компромисс, чтобы сделать эту библиотеку пригодной для использования от F # > .
Практика, например (например):
-
сохранить иерархию объектов как можно проще
-
избегать мутирующего состояния объектов, но возвращать новые
-
и т.д...
Любой, кто уже сделал это, может поделиться им опытом?
Боковое примечание
Интересно отметить этот проект OSS, IronJS. Да, это написано в F #, но автор разоблачает два специализированных хоста IronJS.Hosting.FSharp
и IronJS.Hosting.CSharp
.