Git Product home page Git Product logo

Comments (3)

whb07 avatar whb07 commented on July 29, 2024 3

The way forward with F# is to create a library project and pull it in on your C# executable.

I tested a simple function using this method

from bflat.

graysuit avatar graysuit commented on July 29, 2024

Its like rewriting code to add support for F#.
Even if added, then folks for more, like visual basic, J#... and alot of bugs and harder to concentrate. lol

Instead I suggest developers to do something like dnspy does.
It de-compile .net byte code, and then generates equivalent code in C# and VB.
Even code becomes more readable if pdb symbols are present.

So bflat can do following way:

  1. de-compile assemblies (using dnlib or mono.cecil)
  2. convert that il to c# (which dnspy does)
  3. use that c# code in bflat to generate executables

That way you don't need to fight different language packs. Any .net executable whether C#, VB, F#, IronPython etc can be converted to native code without really need to add support for each.
Just sharing some thoughts, rest author know well.

from bflat.

voronoipotato avatar voronoipotato commented on July 29, 2024

VB should have no issue exclusively running C# libraries, you need language support F# because the F# core library is different from the C# core library. The IL support is probably how we will do it, though you should not need to compile to C#. The good news is it will not lead to more bugs in the C# code since it is completely separated and will be maintained by F# devs. VB is the only other big language that may want to compile to native and their language is in most respects extremely similar to C#. It probably isn't going to be much work for them to add it if they put their mind to it.

from bflat.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.