I was told that the assembly files made from C# and F# source is interoperable as they are compiled into .NET assembly.
- Q1 : Does that mean that C# can call F# functions just like they are C# functions?
- Q2 : How about the IronPython and IronRuby? I don't see any assembly dll from the IronPython/IronRuby.
- Q3 : Is there any easy way to use IronPython/IronRuby functions from C# or F#?
Any example code would be great.
You might have a look at Embedding IronPython into a C# application
Basically, what it does (simplified code):
Yes, you can reference an F# assembly in a C# one. The F# objects etc will function like C# ones when you reference them.
You can access IronPython/Ruby code in C# too, although it's a little different than just referencing an assembly. Here is an example:
http://www.highoncoding.com/Articles/573_First_Look_at_the_IronRuby.aspx
1) Yes. Using a simple example, in F#, I can invoke the main method of a C# console app:
2) For the DLR, I think things are a bit different. I believe this is how you would execute Python (for example);
My syntax may be off a bit - but you should be able to get the gist.
3) You need to download some special DLR DLLs - and then reference them in your C# / F# application in order to be interoperable. They should be available from the Microsoft DLR site.