自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Rust语言学习交流

Rust官方及社区最新信息搜集、文章推送

  • 博客(1615)
  • 收藏
  • 关注

原创 【Rust日报】2024-04-23 C++ 中的问题在 Rust 中仍然存在吗

C++ 中的问题在 Rust 中仍然存在吗这是 Reddit 上的一个讨论帖,主要讨论集中在 C++ 中存在的一些问题是否仍然存在于 Rust 中,以及这些问题如何影响开发者使用 Rust。具体问题包括:泛型和模板的单态化:C++ 的模板和 Rust 的泛型都需要通过单态化处理,这会导致编译时间长和生成的二进制文件大。避免这一问题需要以完全不同的方式重写代码。对 libc 的依赖:两种语言的标准库...

2024-04-24 23:30:58 220

原创 【Rust日报】2024-04-22 Rust编写的LAVD内核调度器为Linux游戏带来了更多展望

Thunderbird 引入 RustThunderbird计划在2024年7月版本中原生支持Exchange邮件功能,并选择Rust语言开发新功能,这是由于 Rust 强调内存安全、性能和易维护性。原文链接 https://blog.thunderbird.net/2024/04/adventures-in-rust-bringing-exchange-support-to-thunderbir...

2024-04-23 23:08:48 159

原创 【Rust日报】2024-04-20 Koto编程语言 发布 最新版本0.14

Koto编程语言 发布 最新版本0.14Koto一种使用RUST开发的编程语言,是一种简单而富有表现力的编程语言,可作为Rust应用程序的扩展语言或独立的脚本语言使用。fizz_buzz=|n|matchn%3,n%50,0then'FizzBuzz'0,_then'Fizz'_,0then'Buzz'else'{...

2024-04-22 23:07:55 268

原创 【Rust日报】2024-04-21 You are Merlin - 一款 CLI 和 WASM 文本冒险游戏

Lamport 在 Rust 中的签名实现 在 Rust 中实现了 Lamport 的签名方案。此实现允许您生成密钥对、签署消息、获取数字签名以及使用签名和公钥验证消息。我正在向社区寻求反馈和建议。如果您对改进代码的惯用性、添加功能或持续集成 (CI) 方面的帮助有任何想法,请告诉我。我也很好奇这个实现是否与您正在进行的任何项目相一致,或者您是否看到它在您的工作中使用的潜力。Github: htt...

2024-04-22 23:07:55 294

原创 【Rust日报】2024-04-19 Egui 能够用于生产了吗?

Tantivy 0.22 发布Tantivy 是一个使用Rust写的全文搜索引擎。目前已成为诸多上层搜索引擎的基石。0.22版本改进了聚合性能和稳定性以及命中率。Github https://quickwit.io/blog/tantivy-0.22又一款Hack反向工具 BiTEBiTE用于分析二进制文件的内容和调试信息。imgGithub https://github.com/WINSDK/b...

2024-04-21 23:30:47 329

原创 【Rust日报】2024-04-18 Rust 高级特性:Traits 和泛型

Rust 调用约定的革新在 mcyoung 的博客上,作者深入探讨了 Rust 语言的调用约定(ABI),并提出了一些创新的想法。ABI 规定了如何在函数之间传递参数和返回值,这包括使用哪些寄存器、函数的序言/尾声(prologues/epilogues)如何编写等。作者认为 Rust 当前遵循的 C ABI 在传递复杂类型时显得不够高效,并提出了一种新的、更高效的调用约定方案。该方案通过 -Zc...

2024-04-20 23:00:58 293

原创 【Rust日报】2024-04-16 curl: 是否应该移除 hyper 相关的实现

curl: 是否应该移除 hyper 相关的实现curl 官方邮件列表中出现了一封公开的邮件[1],探讨是否该把 Rust 实现的 http 后端 hyper 的支持在 curl 2024[2] 的工作任务中移除。curl 官方在 2020 年底合并了对 hyper 作为 libcurl HTTP 功能的替代后端的初步实验性支持。然而截止到今天依然处于实验阶段,还有 15 个测试没有跑通。最近因为...

2024-04-18 23:00:45 468

原创 【Rust日报】2024-04-15 拯救地球,请使用Rust编程

拯救地球,请使用Rust编程本文讨论了如何通过在Rust编程语言中编码,可以更有效地利用现有资源以帮助保护我们的星球。通过在实际项目中将PHP应用重写为Rust,作者体验到了Rust不仅在维护性、开发效率和错误减少方面有优势,还在性能上大大优于PHP,证明了用Rust开发能够大幅减少资源使用。文章依据科学文献,并通过数据中心电力消耗的现状和趋势,强调了采用Rust这样高效的编程语言对减缓电力消耗增...

2024-04-16 23:00:41 409

原创 【Rust日报】Shiva - 解析和生成任何类型的文档

Shiva - Rust 中的开源项目,用于解析和生成任何类型的文档我在从事文档搜索引擎项目时产生了该项目的想法。有一个像 Apache Tika 这样的库,用 Java 编写,可以解析各种类型的文档。为了让我的搜索引擎正常工作,它必须能够从不同类型的文档(PDF、DOC、XLS、HTML、XML、JSON 等)中提取文本。我用 Rust 编写了搜索引擎本身。但不幸的是,在 Rust 世界中没有可...

2024-04-15 22:51:41 350

原创 【大家的项目】DragonOS-使用Rust自研内核的,具有Linux兼容性的轻量化服务器操作系统...

DragonOS龙操作系统是一个面向云计算轻量化场景的,完全自主内核的,提供Linux二进制兼容性的64位操作系统。它使用Rust语言进行开发,以提供更好的可靠性。目前在Rust操作系统领域,DragonOS在Github的Rust内核操作系统排行全国稳居前三位。(在github 搜索language:rust os,并按照star排序,人工筛选国内项目。截止2024年4月14日,DragonOS...

2024-04-14 22:41:52 243

原创 【Rust日报】2024-04-12 C2PA使用Rust来实现其目标

sentiment-analysis-cli-rust 从文本中做情绪检测这是Rust写的一个cli工具,用来分析一个文件中的sentiment。**: 今年开始,我们会重点关注Rust在AI领域的应用Github: https://github.com/Yukigeshiki/sentiment-analysis-cli-rustDevy 交互式博客引擎可使用markdown和自定义DSL交互...

2024-04-13 22:00:44 342

原创 【Rust日报】2024-04-09 关于 xz 后门的思考:lzma-rs 的视角

关于 xz 后门的思考:lzma-rs 的视角近日,Guillaume Endignoux 在其博客上讨论了 xz-utils 压缩项目中的后门问题,讨论了最近在 Rust 生态系统中关于开源依赖和维护的问题,特别是 xz-utils 压缩项目中发现的后门事件。Endignoux 通过 lzma-rs 的视角分析了该事件,并对可能的防御措施进行了探讨。文章首先回顾了 xz-utils 中的后门问题...

2024-04-10 23:30:54 352

原创 【Rust日报】Rust项目 Ratatui获得资助

Rust项目 Ratatui获得资助Ratatui是tui-rs库的继承者,已经围绕Rust/TUI生态系统建立了一个持续增长的社区去年,Ratatui从Radicle获得资助,其金额超过了2万美元。这是对ratatui的认可,也让开源作者们重新考虑了开源项目的资金管理方式原文链接 https://blog.orhun.dev/open-source-funding-with-ratatui/Ru...

2024-04-09 12:04:00 165

原创 【Rust日报】用Rust从头实现一个C编译器

一个声明式解析库 Untwine 发布0.4Untwine是一个声明性解析库,它允许一种类似于使用自定义宏语法进行直接模式匹配的解析风格。这允许创建具有良好性能特征和高质量错误消息的极其紧凑的解析器。这些解析器实现起来很简单,有几个精心挑选的例子:一个几乎完整的JSON解析器,包含12行解析逻辑支持除特殊转义序列之外的所有基本JSON功能(除“)一个在6行解析逻辑中具有四运算表达式解析器的pmda...

2024-04-09 12:04:00 1610

原创 【Rust日报】2024-04-05 octox :一个类Unix OS

Loco 是 Rust 的 Web 或 API 框架。它也是开发人员的生产力套件:它包含您培养爱好或下一次创业所需的一切。它也受到 Rails 的强烈启发。$cargolocostart▄▀▀▄▄▀▄...

2024-04-07 23:37:54 425

原创 【Rust日报】2024-04-04 一款运行在 UEFI 上的 IRC 客户端

Rust 代码在内核中的内存模型LWN.net 发布了一篇文章,讨论了 Rust 代码在内核中如何适应内存模型的问题。Rust 语言与 C 语言在许多方面都有所不同,这些差异在使用 Rust 集成到以 C 为主导的系统中时可能会导致一些不匹配,尤其是在内核中。文章详细探讨了内存模型的概念,以及如何在并发环境中安全地访问数据。目前,内核开发者更熟悉 Linux 内核内存模型(LKMM),因此,当 R...

2024-04-07 23:37:54 295

原创 【Rust日报】如何编写一个既是 bin 又是 lib 的项目

如何编写一个既是 bin 又是 lib 的项目这篇文章讨论了 Rust 项目的一个技巧,项目内同时包含 lib.rs 和 main.rs 两个文件,从而使得一个包既可以是库(lib) 又可以是二进制文件 (bin)。为解决这个问题,文章介绍了可以通过Cargo的 optional dependencies 和 features 来尝试做依赖分离,但在实践中这种方法并不能如预期工作。然后进一步讨论了...

2024-04-06 23:30:11 351

原创 【Rust日报】2024-04-01 Linux内核 Rust开发环境教程

Linux内核 Rust开发环境教程本文是一份有关如何设置 Linux 内核 Rust 开发环境的教程:安装所需的依赖项和 Rust 工具链。克隆 Linux 内核和 Busybox 的源代码。使用 Rust 支持构建内核。配置和构建内核。配置和构建 Busybox。配置根文件系统。创建根文件系统。使用 QEMU 在虚拟机中打包一切。在内核上进行开发。使用 rust-analyzer 和其他工具改...

2024-04-02 23:30:47 381

原创 【Rust日报】2024-03-30 krnl v0.1.0: 安全, 可移植, 高性能计算内核

krnl v0.1.0: 安全, 可移植, 高性能计算内核一个安全,可移植且高兴能的计算内核。为了autograph开发的。与 CUDA 和 OpenCL 类似的功能。支持 GPU 和其他 Vulkan 1.2设备。通过 MoltenVK 支持 MacOS/iOS。内核是内联编写的,完全使用 Rust。主机上的缓冲区可以使用 Vecs 和slices访问。文章链接,https://www.redd...

2024-04-01 23:30:29 372

原创 【Rust 日报】2024-03-31 Helix新版本发布

[new version] Helix 24.03Helix是一个Rust写的编辑器,本次更新如下。AWP一样的跳转。块注释。改进了多语言文档的解析。内部改进:事件系统、用regex-cursor替换了regex。GitHub: https://github.com/helix-editor/helix[new lib] profiprofi是一个支持单线程/多线程细粒度的性能分析器。使用示例:/...

2024-04-01 23:30:29 318

原创 【Rust日报】2024-03-28 - hawkeye 许可协议标头格式化工具

RIIR - hawkeye ,许可协议标头格式化工具hawkeye 是一款许可协议标头格式化工具(license header formatter),用于格式化或者检查源文件中的许可协议标头,过去使用 Java 编写,近日已经完全用 Rust 进行了重写。Cargohawkeye 可执行文件可以通过 Cargo 安装:cargoinstallhawkeye#checklicenseh...

2024-03-30 23:30:58 279

原创 【Rust日报】2024-03-26 Rust target 目录的磁盘空间问题讨论

Rust target 目录的磁盘空间问题讨论一位 Reddit 用户在反映,在他们的 1TB 机器上,一个 target 目录占用了高达 165GB 的空间,总共有近 500GB 的 target 目录空间被占用。相信不少人也遇到过类似的问题,针对 Rust Target 目录磁盘空间占用过大的问题,网友们展开了激烈的讨论,总结如下:空间占用分析:一个用户指出,他发现大约 70% 的空间被 cr...

2024-03-27 23:30:30 680

原创 【Rust日报】2024-03-25 Rust使用神经网络进行数字识别

Rust使用神经网络进行数字识别本文是关于使用 Rust 和 WASM 进行数字识别的两部分系列的第一部分,在这部分中,我们将从头开始实现一个识别数字的 WebApp:在这一部分中,我们将使用 Rust 从头开始实现一个神经网络。文章中解释了神经网络背后的数学原理,所以即使你不了解神经网络,也可以阅读本文。在第二部分中,我们将构建一个与 Rust 后端使用 WASM(WebAssembly)进行交...

2024-03-27 23:30:30 288

原创 【Rust 日报】2024-03-24 wasm 运行时版本管理器 wasmenv

[new library] wasmenvwasmenv 是一个基于 Rust 的 wasm 运行时版本管理器。目前 wasmtime 仅支持 wasmer。此项目允许我们轻松地在不同版本的 wasmer 之间切换、管理安装和配置 shell 环境。$wasmenv--helpUsage:wasmenv<COMMAND>Commands:currentDisp...

2024-03-26 23:30:19 232

原创 【Rust日报】2024-03-22 Borgo: 一个语法类似rust的新编程语言

Borgo: 一个语法类似rust的新编程语言Borgo 是一种编译为 Go 的新编程语言。https://raw.githubusercontent.com/borgo-lang/borgo-lang.github.io/main/borgo.jpg看一段demo:usefmtenumNetworkState<T>{Loading,Failed(int)...

2024-03-23 23:30:25 1046

原创 【Rust日报】2024-03-21 ​Rust 1.77.0 版本发布

Rust 1.77.0 版本发布Rust 团队宣布了 Rust 编程语言的最新版本 1.77.0。这个版本虽然相对小,但包含了一系列改进,使得 Rust 语言更加强大和易用。新特性和改进C-string 字面量: Rust 现在支持 C-string 字面量(例如 c"abc"),它们会扩展为内存中以 null 字节终止的字符串,类型为 &'static CStr。这对于编写与需要 nul...

2024-03-22 13:49:27 807

原创 【Rust日报】2024-03-19 为 C#/.NET 开发者编写的 Rust 指南

为 C#/.NET 开发者编写的 Rust 指南微软官方为 C#/.NET 开发者编写了一份 Rust 入门指南,由浅入深的介绍了 Rust 的各种常见特性。本指南的原作者本身就是 C#/.NET 开发人员,他曾对 Rust 完全陌生。本指南汇集了作者在几个月的时间里编写 Rust 代码所获得的知识。这是作者在开始 Rust 之旅时希望拥有的指南。同时,作者鼓励你阅读网络中其他可用的书籍和材料,而...

2024-03-20 23:30:23 407

原创 【Rust 日报】2024-03-17 redb 2.0.0 发布

[new version] redb 2.0.0-beta0redb 是一个简单、轻量、高性能的 ACID 嵌入式 Key-Value 存储库。受到 Imdb 启发,数据存储在 copy-on-write B 树的集合中。2.0.0 使用一种新的文件格式,将 len() 优化为恒定时间。这意味着它不向后兼容 1.x。其他变化可参考下面的更新链接。更新链接: https://github.com/c...

2024-03-18 23:30:57 363

原创 【Rust日报】2024-03-16 Rust CI/CD 模板

Listeners 0.1.0 — 让进程以跨平台的方式监听端口很长一段时间以来,我一直在搜索主动侦听 TCP 端口的进程的 ID 和名称的Rust库。这样的任务并不容易完成,特别是如果您需要它跨平台兼容 - 每个操作系统以完全不同的方式处理进程和套接字。有几个库可以获取过程信息,但没有一个能够满足这种需求。出于这个原因,我提出了ListenersGithub 链接,https://github....

2024-03-18 23:30:57 342

原创 【Rust日报】2024-03-14 迭代器和可遍历对象

文章 - 迭代器和可遍历对象来自 withoutboats 的文章,一篇关于迭代器定义的简要说明。作者认为,在理解迭代器时,应该区分两类抽象:迭代器和可遍历对象。迭代器:一个状态机,按照顺序逐个产生数字值,随着前进而不断进行可遍历对象:一种能够以任何方式遍历一系列值的对象。Iterators and traversables: https://without.boats/blog/iterato...

2024-03-16 14:38:45 345

原创 【Rust日报】2024-03-12 WinterJS 1.0: 目前最快的 JavaScript Web 服务器

WinterJS 1.0: 目前最快的 JavaScript Web 服务器主要特性极速性能:WinterJS 1.0 在本地执行时能够处理每秒 150k 请求(编译到 Wasm 使用 WASIX 时为每秒 20k 请求),超过了 Bun、WorkerD 和 Node 的处理速度。完全兼容 WinterCG 规范:WinterCG 负责定义一组全局类和函数,这些类和函数需要存在,以便在一系列基础设...

2024-03-14 14:41:02 479

原创 【Rust 日报】2024-03-10 RTCs

[new library] RTCsRTC相关项目:RTC协议:https://github.com/webrtc-rs/rtc选择转发单元SFU:https://github.com/webrtc-rs/sfu,在WebRTC中,SFU主要用于处理群组通话和直播的媒体服务器。WebRTC:https://github.com/webrtc-rs/webrtce83920290852e74e89e...

2024-03-12 12:34:42 361

原创 Rust 中文社区 2024 调查问卷

Rust 中文社区 2024 调查问卷在当今日益增长的技术世界中,Rust 语言以其独特的安全性、性能和并发性能吸引了广泛的关注。作为一种系统编程语言,Rust 通过其所有权模型、借用检查和生命周期概念,提供了无需垃圾回收即可实现安全内存管理的能力,这使得它在开发高性能、可靠的应用和系统软件方面成为了一个强有力的选择。随着 Rust 的普及和社区的成长,了解中文社区的使用现状、需求、挑战和未来预期...

2024-03-11 14:30:42 613

原创 【Rust日报】Ascent:在 Rust 中嵌入的逻辑编程语言

Ascent:在 Rust 中嵌入的逻辑编程语言开发者 s-arash 发布了 Ascent,一种嵌入在 Rust 中的逻辑编程语言。Ascent 类似于 Datalog,通过宏的形式在 Rust 中嵌入,为开发者提供了简洁而强大的逻辑编程解决方案。Ascent 使开发者能够轻松解决图论、路径计算等问题,例如计算图中的连接节点、寻找最短路径等。useascent::ascent;ascent...

2024-03-10 13:23:40 505

原创 【Rust日报】2024-03-06 Rust 版本的 PickleDB

Rust 版本的 PickleDBPickleDB 是一个用 Rust 编写的轻量级且简单的键值存储,很大程度上受到 Python PickleDB 的启发。PickleDB 有趣且易于使用PickleDB 使用usepickledb::{PickleDb,PickleDbDumpPolicy,SerializationMethod};fnmain(){//create...

2024-03-08 16:16:14 385

原创 【大家的项目】Predawn - 一个类似 Spring Boot 的 web 框架

PredawnPredawn,一个类似 Spring Boot 的 web 框架。在目前的 Rust 社区中,web 框架有很多,比如 axum、rocket、poem 等等,但是这些框架有一些问题,比如需要开发者添加一些模板启动代码、需要自己定义配置文件、没有自动依赖注入、集中式注册路由等等,有一些新的框架,如 loco、pavex 在尝试解决这些问题,但是它们的 API 设计对用惯了 Spri...

2024-03-07 16:08:50 400

原创 【Rust 日报】2024-03-03 高性能深度学习库luminal

[new lib] luminalLuminal是一个深度学习库,它使用可组合的编译器来实现高性能。当前的机器学习库往往很庞大复杂,因为它们试图直接将高级操作映射到底层手工编写的内核上,并且专注于立刻执行(eager模式)。像PyTorch这样的库包含数十万行代码,几乎不可能由一个单一的程序员理解所有内容,更不用说进行大规模重构了。但是,是否有必要如此复杂呢?机器学习模型往往是由几个简单的运算符构...

2024-03-04 14:51:20 416

原创 【Rust日报】crabml,使用 Rust 重写 GGML

项目 - crabml,使用 Rust 重写 GGMLcrabml 是一个正在进行中的实验性项目,相当于是使用 Rust 重新实现 GGML。目前它已经支持推理 Q8_0 量化的Llama 3B模型,与 ggml 性能差距仅有 1token/s 。其设计目标是:专注于推理。将张量运算限制为 LLM 推理所需的最低限度。在廉价硬件上具有足够快速的推理能力。从实现之初就采用 mmap() 。SIMD ...

2024-03-02 15:41:55 427

原创 【Rust日报】2024-02-28 Pingora 开源

Pingora 是一个 Rust 框架,用于构建快速、可靠和可编程的网络系统。它已经经过了大规模的测试,多年来一直以每秒超过 4000 万次的速度提供互联网请求。主要特点包括:异步 Rust:快速可靠HTTP 1/2 代理基于 OpenSSL 或 BoringSSL 的 TLSgRPC 和 WebSocket 代理优雅的重载可定制的负载均衡和容错策略支持各种观测工具使用 Pingora 的理由包括...

2024-02-29 14:58:16 429

原创 【Rust日报】2024-02-27 某团队使用 Rust 开发控制系统软件的体验(讨论)

bpftop:监测运行中的 eBPF 程序的工具bpftop 是一个由 Netflix 提供的工具,它提供了一个动态的实时视图,用于查看运行中的 eBPF 程序。该工具显示每个程序的平均运行时间、每秒事件数和估计的总 CPU 使用率。此外,它还提供这些统计信息随时间变化的图形视图。其有如下特性:显示主机上所有运行中的 eBPF 程序的列表,包括 ID、类型和名称;;显示每个 eBPF 程序的周期和...

2024-02-28 16:19:07 427

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除