问题标签 [compiler-as-a-service]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1098 浏览

gcc - 在云端访问 GCC 进行编译

我们正在构建一个云服务来提供“编译即服务”。我们在 Azure 上有一个 Ubuntu 12.04 VM。我们也设法在虚拟机上安装了 GCC。现在我们正在 Visual Studio 上构建前端。我们有一个文本框来保存代码。但是我们无法弄清楚如何使用 GCC 来处理代码?

目前我们正在使用这样的东西;

我不确定它的哪些部分是正确的。由于我们无法测试它,因为编译器存储在 clod 上。

字符串 szMgwGCCPath = "/usr/bin/gcc"; // 位置示例

我们如何给出位置?我们是否使用 blob 存储 URL?怎么做?

之后我们如何处理文件?

0 投票
2 回答
3873 浏览

c# - C# 编译器即服务:Mono.CSharp 与 Microsoft.CSharp

我希望将我们代码中某些基于反射的部分替换为使用动态运行时编译性能更好的部分。环顾四周,我发现 Mono 和 Microsoft 都有单独的编译器即服务解决方案:Mono.CSharpMicrosoft.CSharp.

冒着提出基于意见的问题的风险,我想知道这两者如何比较?

据我从非常肤浅的初步调查中可以看出,它们通常都提供 CAAS 功能。我能够使用 Microsoft.CSharp 编译一个“Hello World”类并执行它。虽然我还没有对 Mono 做同样的事情,但我假设它也可以做同样的事情。

有没有人有任何经验或两者都可以评论这个问题?


编辑:我不是在询问 Mono 的 C# 和 Microsoft 的 C# 的比较——我们已经熟悉并使用两者。这个问题专门针对两个CAAS编译器即服务)解决方案。

CAAS不是(无论如何).NET 运行时的标准部分,即还没有System.Compile命名空间。这两个解决方案是 C#Mono.CSharpMicrosoft.CSharp单独的非标准 CAAS 解决方案。他们的界面非常不同,因此是个问题。

Mono 的编译器服务

微软的编译器服务


编辑#2:完全忘记了罗斯林(感谢@Lex Li

0 投票
1 回答
1841 浏览

c# - Mono Cecil 和 NRefactory 之间有什么关系以及如何将它们与 Roslyn 进行比较?

我了解 Microsoft 的 Compiler as a Service 或 Roslyn 项目的灵感来自 Mono Cecil。

但是 Mono Cecil 和 NRefactory 是什么关系呢?一个使用另一个吗?还是它们是做同样事情的替代技术?

似乎它们都提供了相同的大量代码分析服务,就像 Roslyn 一样。