gpt4 book ai didi

f# - 在应用程序脚本托管中。 tryfsharp.org 是如何工作的?

转载 作者:行者123 更新时间:2023-12-03 10:05:08 26 4
gpt4 key购买 nike

我对在我的应用程序中使用 F# 脚本的能力感兴趣。

有类似 tryfsharp.org 的东西会很棒,特别是 Intellisense 功能。这些东西在 Github 上的某个地方可用吗?这是如何运作的?

最佳答案

简答

用于第一个带有 F# 2 的 TryFSharp 的代码(包括 Intellisense 支持)可用作 code drop .例如,Rob Pickering 为 Undertone 构建了一个在线编辑器。用它。我怀疑当前使用 F# 3 的 TryFSharp 网站上使用的代码会及时出现。

TryFSharp 使用 Silverlight 在客户端浏览器中托管 F# 编译器(F# 是用 F# 编写的)。也可以从浏览器按需调用在服务器上运行的 F# 编译器的实例,这是 TryFs.Net 所采用的方法。和 Pit .

更长的答案

脚本有两个方面:

  • 编辑
  • 执行

  • F# 已经支持编辑和执行 (.fsx) script files通过 F# Interactive .

    编辑 F# 代码

    F# 代码不乏外部编辑器:
  • Visual Studio
  • SharpDevelop
  • Xamarin Studio
  • Emacs
  • Vim
  • TryFSharp
  • F# Notebook

  • Xamarin Studio、Emacs 和 Vim 的编辑器支持基于开源 F# Bindings项目,它提供代码完成。
    SharpDevelop 使用开源 AvalonEdit并包括 F# 的语法突出显示。您可以在自己的项目中使用 AvalonEdit,例如开源 Refunctor项目使用它在 Reflector 中提供 F# 编辑。

    还有几个新的 F# 编辑器即将推出:
  • Cloud Sharper - 基于 Web 的 F# IDE
  • Tsumani IDE - Excel、Hadoop 等的嵌入式编辑器

  • AvalonEdit 是开始基于桌面的嵌入式编辑器的好地方。选择编辑器环境后,您需要在简单的语法突出显示或使用 F# 绑定(bind)的更高级集成之间进行选择。如果您怀疑人们会使用外部编辑器,那么语法高亮可能就足够了。

    带上你自己的编辑器可能是最容易开始的地方,它只需要执行即可。

    执行 F# 代码

    执行 F# 代码的选项:
  • F# CodeDOM来自 F# PowerPack
  • F# 编译器通过 F# 编译器代码删除或调用 fsi.exe

  • 使用 F# CodeDOM 编译代码段:
    open Microsoft.FSharp.Compiler.CodeDom
    open System.CodeDom.Compiler

    let compile snippet =
    use provider = new FSharpCodeProvider()
    let options = CompilerParameters(GenerateInMemory=true)
    provider.CompileAssemblyFromSource(options, [|snippet|])

    let snippet = """
    module Snippet
    let x = 1
    """
    let results = compile snippet

    关于f# - 在应用程序脚本托管中。 tryfsharp.org 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15313404/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com