专访Move语言之父:为什么Sui Move智能合约语言适合构建Web3产品?’ Refined version: ‘专访Move语言创始人:为什么Sui Move智能合约语言适合构建Web3产品?

'专访Move语言创始人:为什么Sui Move适合构建Web3产品?'

Sui Move:构建Web3的新一代智能合约编程语言

近日,我们与Mysten Labs的首席技术官、Move编程语言创作者Sam Blackshear进行了交谈,讨论了他为什么开发Sui Move这种新的智能合约编程语言、Sui能够扩展的功能以及去中心化技术对构建者的好处。

编程语言的本质与选择

编程语言是一种与计算机进行友好、安全、高效和明确交互的工具。与自然语言不同,编程语言需要具备精确定义的语义。编程语言的本质是针对特定领域或特定任务的,因此存在多种编程语言,专注于解决特定问题。例如,Rust编程语言专注于编写既快速又高性能的代码,同时保证安全性。与之前的语言相比,Rust在处理底层细节时不易出错。

Sui Move的故事与此类似。Sui Move并非为了创造一种新的语言,而是为了满足开发者的需求。开发者在选择编程语言时,不仅仅关注语言本身,还关注语言的社区规模、可用的数据库、使用人数和教育资源等因素。因此,创造一种新的语言需要具备高门槛,即使该语言本身更优秀,但如果没有这些因素的支持,其优势也将无意义。

Move的开发情况

Move起源于Facebook的Libra项目。Move的目标是创建智能合约,但在对现有智能合约的研究中,发现现有智能合约语言在很多情况下并不理想。例如,Solidity语言由于安全性问题和缺乏抽象和编程工具而让人失望。相比之下,智能合约语言应该可以提供与现实世界中的所有权和所有权转让相对应的抽象,以及基本的安全保证。

因此,Move的设计目标是围绕智能合约编程的基本需求展开,提供安全且高效的编程体验。Move采用基于账户的数据模型,通过定义资产类型和访问控制策略来管理资产。这种设计使得编写智能合约变得简单直观,同时也为系统提供了基本的安全保障。

Sui Move与Web3的构建

Sui使用了Move的一种变体,称为Sui Move。Sui Move的设计考虑了Web3的特点和需求。在Web3领域,我们不希望在基础层面进行合规性限制,而是希望事物尽可能自由,可以将资产自由地发送到任何地址。此外,在Sui中,我们还对交易的处理逻辑进行了改进,使得程序员可以更加方便地进行开发。Sui Move采用了以对象为中心的数据模型,程序员只需准备好所需的资产,立即开始进行有趣的工作,而无需进行繁琐的记账工作。这种设计不仅方便了程序员,也使得Sui能够更高效地进行水平扩展和其他操作。

另外,Sui Move还引入了可编程交易区块的概念。可编程交易区块由具有输入和输出对象的交易组成,可以将多个操作打包到一个交易中,从而降低了gas费用和批准次数,同时实现了原子性。这种设计使得用户可以更便捷地进行操作,并提高了用户体验。

用户的好处与信任

对于用户来说,可编程交易区块带来了许多好处。首先,可编程交易区块降低了gas费用,因为可以将多个操作打包到一个交易中,减少了交易的数量。其次,可编程交易区块减少了需要批准的次数。如果系统需要交易批准,用户只需进行一次批准,即可完成所有操作。此外,可编程交易区块还具备原子性,可以实现多个操作的依赖关系。

对于代码信任的问题,区块链的透明性是一个重要方面。虽然不是每个人都能够理解代码的工作原理,但在Web3中,代码是开放且可审查的,存在抽样检查的可能性。此外,区块链的不可变性和重复使用性也增强了用户的信任感。

Sui Move的未来发展

Sui Move目前关注于开发者的需求和反馈,不断改进和完善功能。Sui Move是一个非常适合第一次发布的语言,但在进行功能扩展时需要考虑与初始包的兼容性。目前,Sui Move团队正在研究许多与此相关的功能,并不断改善Move与前端代码的连接体验。团队希望通过持续的优化和改进,使得应用程序更多地由Move组成,提高安全性,同时也使得非Move程序员能够轻松理解和使用Sui Move语言。

总的来说,Sui Move作为一种新一代智能合约编程语言,具备丰富的功能和优势,为构建Web3提供了强大的工具和支持。在未来,我们可以期待Sui Move在Web3领域的广泛应用和推广。