Livebook:Elixir的协作和互动码笔记本

2021-04-19 22:03:01

我们很高兴宣布LiveBook,这是一个用于在Elixir中编写交互式和协作代码笔记本的开源Web应用程序,并使用Phoenix LiveView实现。 LiveBook是我们的旅程中的一个重要步骤,使Erlang VM及其生态系统适合数值和科学计算。

我录制了一个刻录播放,突出了一些LiveBook功能,您可以在下面观看。它还展示了轴突库,用于在Elixir中建立神经网络,以及Elixir V1.12中的一些改进:

LiveBook是由JonatanKłosko开发的Dashbit项目,由我自己,Jon Klein,Chris McCord的贡献,由Aakash Raj Dahal设计。我们很高兴在狂野中拥有一个复杂的LiveView应用程序的开源示例,我们希望您喜欢使用它!

如果您还无法观看视频,这里是LiveBook功能的摘要:

使用Phoenix LiveViewwhere的可部署的Web应用程序构建,用户可以创建,叉和运行多个笔记本电脑。

每个笔记本电脑由多个部分组成:每个部分由Markdown和Elixircells制成。可以按需评估Elixir细胞中的代码。通过Katex的数学公式是Alsosupported。

持久性:笔记本可以通过.livemd格式持续到磁盘,这是kardown的asubset。这意味着您的笔记本可以保存以供以后,轻松共享,并且随着版本控制也很好地发挥作用。

顺序评估:代码单元以特定顺序运行,保证相同LiveBook的未来用户看到相同的输出。如果重新执行先前的单元格,则在Cellare标记为陈旧之后,以使其清除它们依赖于过时的笔记本状态。

自定义运行时:执行elixir代码时,您可以启动新的Elixir进程,连接到现有节点,或在现有的Elixir项目中运行它,其中包含其模块和依赖项的访问。这意味着LiveBook可以是为现有项目提供的提供程序的重要工具。

显式依赖项:如果您的笔记本具有依赖项,则在Elixir v1.12 +中的MIX.INSTALL / 2命令的帮助下显式列出它们。

协作功能允许多个用户一次性在同一笔记本上工作.Collaboration在单节点或多节点部署中工作 - 无需其他工具。

此公告只提供了我们的LiveBook Vision的初始步骤。我们的Planis继续关注UpcomingReleases中的视觉,协作和互动功能。