мультиязычная программа
есть задача сделать программу, где GUI будет реализован на c# через конструктор, а скрипт, который будет что-то рисовать в gui, на f#.
как из всего этого сделать цельную программу?
использую visual studio 19, .net fraemwork
Ответы (1 шт):
C# и F# компилируются в т.н. .Net сборки (корректнее будет слово "собираются"). Рантайм в ходе исполнения ничего не знает про то, на каком языке что-то раньше было написано, везде один только байт-код. Так что программа должна состоять из двух сборок.
Традиционно (эта традиция возникла не на пустом месте), IO обращается к логике, а не наоборот. По этому решение - просто реализовать отдельную либу на F# (в решении Visual Studio нужно создать новый проект с F#), подключить как проекту на C#, и из C# дёргать логику определённую на F#.