Я хочу подвергнуть свои библиотеки F# как scriptable инструмент для манипулирования данными.
Оптимально, я хочу, чтобы это средство сценариев не потребовало полной установки F# с fsi и так далее.
Существует ли способ связаться в библиотеки FSI для выполнения сценариев из кода F#? Мой google-fu приводит меня к сбою на этом, и источники F# для fsi немного запутаны.
Нет, API хостинга для интерактивных сеансов F # отсутствует. Сам fsi.exe включен в легкий клиентский процесс, который обрабатывает взаимодействие, и фоновый серверный процесс, который выполняет тяжелую работу. (Серверный процесс построен на основе библиотек DLL компилятора F #, поэтому вам нужна полная установка F #, а не только редист времени выполнения F #. Кстати, предоставление API для этого является довольно распространенным запросом, и команда F # рассмотрит для будущего выпуска.)
Тем не менее, если у клиентов действительно есть полная установка F #, вы всегда можете просто отправить некоторые скрипты (файлы .fsx), клиенты могут #load
или библиотеки (. dll), что клиенты могут #r
начать свои интерактивные сеансы fsi. Это определенно хороший режим для использования интерактивного F # для обработки и исследования данных.