Long reader, very first question. fsi.exe is executable .NET and therefore contains its own assembly complete with all yummy methods and whatnot fsi uses to execute F # scripts.
Look at the assembly in .NET Reflector (choose your class, but Shell is the best example) shows a bunch of garbage * names that look like decorated C ++ functions (say from Dependency Walker). By the way, and a little bit so, F # assemblies compile almost the same way, with a lot of garbage names *, which makes me think that fsi.exe is written in F #, perhaps as proof of usability?
In any case, here is my question: did anyone delve into fsi.exe and figure out how to embed it in a .NET application? Because I would like to use F # as a scripting language, but programs are compiled (unexpectedly), and fsi.exe should run scripts, which is unacceptable in my domain (I need a permanent virtual machine). I do not expect guidance on using fsi.exe, but I'm curious to know who he played with, and if so, what did you learn about how it works?
Thank you for your time.
* Trash at random. Obviously, they are formatted in this way for a specific reason, which is under the hood.
Tom
source share