< 返回版块

rust 日报 babpstep 发表于 2021-12-07 12:59

Tags:vim,linux,question

在 Vim 中写 Rust

Neovim 是 vim 的一个分支,它专注于可扩展性和可用性。比如,能够使用 Lua 以及各种脚本来编写插件,并为扩展编辑器提供更大的灵活性。

在 Neovim 0.5 版本中,开发者引入了语言服务器协议 (LSP) 客户端框架 (:help lsp)

这意味着,Neovim 可以充当 LSP 服务器(如 rust-analyzer)的客户端,并协助构建增强的 LSP 工具。

下面这篇文章就详细说明了 如何为 Neovim 配置 Rust 插件,可以省去很多自己折腾的时间。

文章地址

Rust for Linux 补丁发布

2022 年,我们很可能会看到 Linux 内核中的实验性 Rust 编程语言支持成为主流。最近又发布了最新的补丁,介绍了在内核中处理 Rust 的初始支持和基础设施。

目前 Rust 支持在 Linux 中编写最简单的 driver,虽然还没有落地,但是距离完善的开发支持,也仅仅是一个时间问题,无需顾虑可行性。

Rust-For-Linux-v2

Rust-Linux-Kernel-2021

讨论:学习 Rust 让我更擅长 C VS 学习 C 让我更擅长 Rust

这来自 Reddit 上的一个热门讨论,题主问题如下:

显然,要学习 C 就应该学习 C,要学习 rust 就应该学习 rust

但我很好奇,在第一次学习其他语言时,是否存在不对称性。 主要是我听说严格的 rust 编译器会让你成为一个更好的低级程序员,因为它迫使你养成可以扩展到 C 的良好编码习惯,但这是真的还是假的?

热门回帖如下:

  1. 我想说,了解两种语言非常有用,但一般来说,它们本质上是完全不同的,恕我直言,很难将知识从一种语言移植到另一种语言。

    也就是说:如果您非常了解 C,并且如果您在实际使用该语言时遇到了一些问题,您肯定会轻松理解 Rust 中大多数安全机制的基本原理,如果 Rust 是您的第一语言,您可能会不清楚这些原理。

  2. 如果您可以在不与 rust 中的借用检查器进行斗争的情况下进行编码,然后切换到 C,那么您在编写代码时大概率会自动开始在 C 中应用相同的模式。但是,Rust 为您进行内存管理,从 Rust 切换到 C 后,释放分配的内存仍然是一件头大的事情。

  3. 并不是说编写 C 的人不会像你说的那样考虑生命周期,而是他们经常使用临时的心理模型来考虑它。 Rust 形式化了一个你可以带回 C 的模型。

    Rust 之所以影响你在 C 中的编码习惯,并不是使用 C 或其他语言编写脱糖的 Rust 那么简单,而是可以避免过于复杂的所有权模型,更多地考虑指针失效,避免可能移动的自引用结构,避免修改 for 循环条件中使用的变量,避免可变全局变量,正确使用同步原语等。

-- From 日报小组 RustPlumber

社区学习交流平台订阅:

评论区

写评论
向離 2021-12-08 09:26

rust影响的不仅是c程序员, 而是所有其它语言的程序员

1 共 1 条评论, 1 页