美文网首页
VAL 语言:C++ 和 Rust 的终极替代品

VAL 语言:C++ 和 Rust 的终极替代品

作者: Linux大师 | 来源:发表于2023-08-11 10:26 被阅读0次

Val 是一种运行接近Rust的高级编程语言,该语言的创建者 Dimi Racordon 表示。发明人 Racordon 近日表示,称自己研发的 VAL语言目标用于系统编程,通常用于在机器边缘运行的任何应用程序,并且能够充分利用机器的大部分性能。

VAL是美国东北大学Dimi Racordon开发的一种新型高级编程语言,这位女士专门研究和设计基于类型内存安全的计算机编程语言。

这个语言源于她与 Google 和 Adobe 合作对 Swift 编程语言和可变值语义领域的研究,包括该领域支持值的独立性以促进本地化计算与推理技术。

在这里我们举粟说明,比如 Haskell、Rust 和 R 都是使用可变值语义的语言例子。

“这个项目,大约开始于两年前。我写了一篇论文,我与 Google 和 Adobe 的优秀专家人士合作。写完这篇论文后,我脑子里便有了一个小想法,我想,哦,我们会尝试实施一些东西,这将是一个两三周就能搞定的项目。但实际,这个项目到现在已经两年了。”

由于 Swift 语言支持可变值语义,Racordon 决定使用它而不再用其他编程语言。其主要原因是,Swift 对于系统编程有意义,并且它可以编译为机器代码。Racordon 想知道如果她设计一种纯粹关于可变值语义的语言会发生什么,因为它也会发生破坏。

“可变值语义是一门真正关注概念值的编程学科。例如,如果我有一个数组,这个数组的值就是我想要操作的最重要概念,这给了我本地推理的思考。常发生的情况是,如果你将一个数组传递给Python

中的函数,然后这个函数继续改变数组的值,可能添加一个元素,或者从这个数组中删除一些元素,然后可以从函数外部观察到这种效果”。

“该函数的调用者将可以更改其自己的数组。你无法对值进行本地推理,因为每次调用函数时,程序中看似不相关的部分都可能会出现副作用。” Dimi Racordon 补充道。

这使人类很难应用本地推理,从而更难以确保程序的正确性,但也让编译器变得困难,现在的优化需要保守的执行。

考虑到可能存在其它引用,并且程序中一些看似不相关的部分可能需要此值,最好避免做任何事情,否则会损害该语言的体系结构。

为什么选择 Val?

根据 Racordon 的说法,该语言目标就是用于系统编程,因此它通常用于在机器边缘计算/运行并且必须充分利用其性能的任何应用程序。

有些应用程序无法负担虚拟机或垃圾收集器的费用,例如操作系统、视频游戏和图像处理。她说,嵌入式应用程序也将是“一个非常有趣的目标”。

“嵌入式系统的一个问题是,它是一个非常支离破碎的生态系统。它几乎是一个系统、一个 CPU、单一一种架构,”Racordon 说。“为所有人提供一种通用语言确实很困难。当然,它可能会起作用。但如果我们真的想获得最大可能的性能,我们可能必须专门针对特定目标开发。”

目前,该开源语言可在GitHub上获取,但仍在创建与开发中。Racordon 也正在寻找那些想要通过改进语言来“亲自动手”的开源贡献者。

“他们采取了错误的方法来解决问题。他们正在采取尝试监管引用的方法,并拥有一个类型系统,使用它们是安全的,”她说。

“而对于 Val,我们说,让我们摆脱引用,因为引用是问题所在,所以我们拥有一个更简单的模型。”

文章来源:https://www.linuxprobe.com/vyychrdzjtdp.html

相关文章

  • rust 开篇

    1、rust 语言特点 Rust 基于C++,理论上来说,它的速度与 C / C++ 同级 Rust 被设计为保证...

  • 带你手撸万元java进阶课程:jvm基础知识、字节码、类加载器

    编程语言 演化: 机器语言->编程语言->高级语言(java,c++,Go,Rust等) 面向过程--面向对象-面...

  • 【宇宙条-base上海】职位:Rust工程师

    作为一门系统编程语言,Rust 一直致力于解决高并发和高安全性系统等问题。 和老牌的 C++ 相比,Rust 的性...

  • [学习笔记]初试rust

    什么是Rust? Rust 是一门系统级编程语言,可以被归纳为通用的、多范式、编译型语言,与C/C++不同的是,R...

  • rust语言特性汇总

    Rust是mozilla推出的一款系统级的编程语言,其两大特点在于零开销抽象和安全性。 rust特点类似于C++,...

  • rust语句1

    常用的语言,表达式语句是语言的组成部分,rust也是一样的。 if语句 和C语言并无区别 循环语句 c、c++中的...

  • rust与c,c++,go,java性能比较

    一,rust与c 二,rust与c++ 三,rust与go 四,rust与java

  • Rust 简介

    Rust 是什么 Rust 是一门系统级别的通用的、多范式、编译型编程语言,与 C/C++类似。其运行速度理论上也...

  • 【运维经】第9章——rust(cargo)加速

    rust(cargo)加速 因为本人主营业务是C++,那么就要更了解C++的敌人——RUST(听说她要取代C++)...

  • webAssembly学习

    webAssembly设计的目的不是为了手写代码而是为诸如C、C++和Rust等低级源语言提供一个高效的编译目标。...

网友评论

      本文标题:VAL 语言:C++ 和 Rust 的终极替代品

      本文链接:https://www.haomeiwen.com/subject/upktmdtx.html