zoukankan      html  css  js  c++  java
  • 将 C# 编译为原生机器码

     
    C# 用户似乎都希望 C# 可以和 C++ 一样编译为本地的机器码。如果 C# 可以编译为机器码,将可以做到:
    1. 效率提高,可以取代 C++ 。
    2. 反编译。
     
    当然微软在商业利益的考虑下是不允许这么做的。
     
    不过仍然有很多人在尝试这个艰巨的任务。完成 C# 转原生代码,可以认为是 C# 转 C++ 代码。C# 本身就是学习 C++ 的,因此大部分语法都可以直接转为 C++ 代码。主要问题为 C# 的运行库很难移植到 C++。
    1. C++ 没有 GC 库。这个可以使用开源的 GC 库代替。
    2. C++ 没有动态类型加载器。这个可以自动生成一些静态方法来调用。
    3. C++ 没有 .net 其它工具库。这个理论上可以先将微软开源的 C# 开源库编译为 C++,然后直接调用。
     
    因此理论上,C# 编译为原生机器码是完全可行的,不过这是一个很大的项目。
     
    这是一个开源的 C# 转 C++ 的项目。
     
    http://makesharppwn.codeplex.com/
     
    经过测试,它现在可以转换部分代码,还属于玩具级别。
     
     
     
    我相信一个开发效率高又能在性能上和 C++ 媲美的语言还是很有需求的。与其开发 C# 的编译器还可能有版权问题。还不如自己创造一个和 C# 接近的新语言。

    以下是我要做的新语言的目标,如果有意合作的请点击:

     
  • 相关阅读:
    beego——过滤器
    beego——session控制
    Differentiation 导数和变化率
    验证码识别
    pip 下载慢
    ORB
    决策树
    机器学习第二章 配对网站
    K-近邻算法
    ubuntu下安装配置OpenCV
  • 原文地址:https://www.cnblogs.com/xuld/p/3343477.html
Copyright © 2011-2022 走看看