一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Rust實現(xiàn)的趣味三體編程語言

jf_wN0SrCdH ? 來源:Rust語言中文社區(qū) ? 2023-03-28 09:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

項目地址:https://github.com/rustq/3body-lang

在線體驗:https://rustq.github.io/3body-lang/

基于 REPL

ce824588-ccf7-11ed-bfe3-dac502259ad0.png

基于 Runtime

ce9bf99c-ccf7-11ed-bfe3-dac502259ad0.png

線上體驗

cebca4ee-ccf7-11ed-bfe3-dac502259ad0.png

Working with Wasm!! 主很在乎

Playground:https://rustq.github.io/3body-lang/

語法

Variable bindings

Format

	

<identifier><expression>;

Example

	

給 歲月 以 "文明"; 給 時光 以 "生命";

Operators

前進(jìn)(+)運算符

	

給 自然選擇 以 0; 自然選擇 前進(jìn) 4 // > 4

降維(-)運算符

	

給 宇宙 以 { "維度": 10 }; 宇宙["維度"] 降維 7 // > 3

Boolean


	

這是計劃的一部分 // > true


	

主不在乎 // > false

Function

Format

	

法則 (<parameter one>, <parameter two>, ...) { <block statement> };

Example

	

給 黑暗森林 以 法則() { 給 基本公理 以 ["生存是文明的第一需要", "文明不斷增長和擴(kuò)張,但宇宙中的物質(zhì)總量保持不變"]; 基本公理 } 黑暗森林()

Loop

Format

	

面壁 (<expression>) { <block statement> };

Example

	

給 面壁計劃 以 法則() { 給 危機紀(jì)元 以 3; 給 人數(shù) 以 4; 面壁 (危機紀(jì)元 < 400) { 給 危機紀(jì)元 = 危機紀(jì)元 + 1; if (危機紀(jì)元 == 8) { 給 人數(shù) 以 人數(shù) - 1; 延續(xù); } if (危機紀(jì)元 == 23) { 給 人數(shù) 以 人數(shù) - 1; 延續(xù); } if (危機紀(jì)元 == 205) { 給 人數(shù) 以 人數(shù) - 1; } 廣播([危機紀(jì)元, 人數(shù)]); if (危機紀(jì)元 == 205) { 破壁; } } } 面壁計劃()

內(nèi)置方法

Print

Format

	

廣播(<arg1>, <arg2>, ...): void

Example

	

給 三體世界坐標(biāo) 以 "半人馬星系"; 廣播(三體世界坐標(biāo)); // > "半人馬星系"

Sleep

Format

	

冬眠(<arg1>): void

Example

	

冬眠(1000);

Clear

Format

	

二向箔清理(): void

Example

	

二向箔清理();

Exit

Format

	

毀滅(): void

Example

	

毀滅();

關(guān)鍵字對照表

Monkey 3body-lang Explanation
let "give"
= "as"
+ 前進(jìn) "go forward"
- 降維 "dimension reduction"
true 這是計劃的一部分 "It's part of the plan."
false 主不在乎 "The Lord doesn't care."
fn 法則 "rule"
while 面壁 "face the wall"
break 破壁 "break the wall"
continue 延續(xù)、延緒 "continue"
print 廣播 "broadcast"
sleep 冬眠 "hibernation"
clear 二向箔清理 "two-way foil cleaning"
exit 毀滅 "destroy"

系統(tǒng)內(nèi)置隨機函數(shù)庫 (基于純 3body 語法實現(xiàn))

rand

如何開發(fā)本項目


	

$ git clone https://github.com/rustq/3body-lang.git $ cd 3body-lang $ make repl


	

$ ./target/debug/runtime ./example/macroatom.3body


	

$ make build_wasm


	

$ make test

有更多建議和想法

Create issues:issues

審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 編程語言
    +關(guān)注

    關(guān)注

    10

    文章

    1956

    瀏覽量

    36616
  • 語法
    +關(guān)注

    關(guān)注

    0

    文章

    44

    瀏覽量

    10165
  • Rust
    +關(guān)注

    關(guān)注

    1

    文章

    234

    瀏覽量

    7088

原文標(biāo)題:[大家的項目] Rust 實現(xiàn)的趣味三體編程語言

文章出處:【微信號:Rust語言中文社區(qū),微信公眾號:Rust語言中文社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    如何使用Rust語言和paho-mqtt模塊實現(xiàn)MQTT協(xié)議

    模塊實現(xiàn)MQTT協(xié)議,并重點介紹LWT特征。 Rust是一種系統(tǒng)級編程語言,它的主要特點是安全、高效、并發(fā)。Rust編譯器會在編譯時進(jìn)行內(nèi)存
    的頭像 發(fā)表于 09-19 14:41 ?2313次閱讀

    如何使用Rust語言和rumqttc模塊實現(xiàn)MQTT協(xié)議的異步API

    的系統(tǒng)編程語言,非常適合開發(fā)物聯(lián)網(wǎng)設(shè)備和后端服務(wù)。本教程將介紹如何使用Rust語言和rumqttc模塊實現(xiàn)MQTT協(xié)議的異步API,并提供幾
    的頭像 發(fā)表于 09-19 14:45 ?2976次閱讀

    基于Rust語言Hash特征的基礎(chǔ)用法和進(jìn)階用法

    Rust語言是一種系統(tǒng)級編程語言,具有高性能、安全、并發(fā)等特點,是近年來備受關(guān)注的新興編程語言。
    的頭像 發(fā)表于 09-19 16:02 ?1812次閱讀

    如何在Rust中使用Memcached

    Memcached是一種高性能、分布式的內(nèi)存對象緩存系統(tǒng),可用于加速動態(tài)Web應(yīng)用程序。Rust是一種系統(tǒng)級編程語言,具有內(nèi)存安全、高性能和并發(fā)性等特點。Rust
    的頭像 發(fā)表于 09-19 16:30 ?1510次閱讀

    Rust語言如何與 InfluxDB 集成

    Rust 是一種系統(tǒng)級編程語言,具有高性能和內(nèi)存安全性。InfluxDB 是一個開源的時間序列數(shù)據(jù)庫,用于存儲、查詢和可視化大規(guī)模數(shù)據(jù)集。Rust
    的頭像 發(fā)表于 09-30 16:45 ?1477次閱讀

    基于Rust語言中的生命周期

    Rust是一門系統(tǒng)級編程語言具備高效、安和并發(fā)等特,而生命周期是這門語言中比較重要的概念之一。在這篇教程中,我們會了解什么是命周期、為什么需要生命周期、如何使用生命周期,同時我們依然會
    的頭像 發(fā)表于 09-19 17:03 ?1170次閱讀

    Rust的多線程編程概念和使用方法

    Rust是一種強類型、高性能的系統(tǒng)編程語言,其官方文檔中強調(diào)了Rust的標(biāo)準(zhǔn)庫具有良好的并發(fā)編程支持。Thread是
    的頭像 發(fā)表于 09-20 11:15 ?1395次閱讀

    Rust 語言中的 RwLock內(nèi)部實現(xiàn)原理

    Rust是一種系統(tǒng)級編程語言,它帶有嚴(yán)格的內(nèi)存管理、并發(fā)和安全性規(guī)則,因此很受廣大程序員的青睞。RwLock(讀寫鎖)是 Rust 中常用的線程同步機制之一,本文將詳細(xì)介紹
    的頭像 發(fā)表于 09-20 11:23 ?1190次閱讀

    在Aurix Tc375Lk上使用Rust編程語言可以嗎?

    您好,如果我想在 Aurix Tc375Lk 上使用 Rust 編程語言,可以嗎?如果是,鏈接 rust 編譯器 ADS 和 freetoolchain 的步驟是什么?你有在 ADS
    發(fā)表于 05-17 13:42

    C語言趣味程序百例精解

    其他編程語言——C語言趣味程序百例精解,感興趣的小伙伴可以看一看。
    發(fā)表于 11-03 15:50 ?0次下載

    微軟開發(fā)基于Rust的新編程語言,將很快開源

    此前,微軟表示正探索將Rust作為C和C++的安全替代方案,并且也對外展示了使用Rust重寫Windows組件的體驗,根據(jù)微軟的說法,Rust是一種從根本上考慮安全性的編程
    的頭像 發(fā)表于 12-03 10:36 ?4097次閱讀

    微軟正在研發(fā)基于Rust新的安全編程語言

    為提高 Windows 10 的安全性,微軟研究人員 Matthew Parkinson 在本周的一次演講中披露:微軟正基于 Rust 開發(fā)新的安全編程語言。
    的頭像 發(fā)表于 12-06 16:36 ?3439次閱讀

    基于Rust 編程語言的小游戲程序?qū)嵗?/a>

    在編寫程序之前你的電腦必須先安裝好 Rust 的基礎(chǔ)開發(fā)環(huán)境,并且有 Cargo 支持,如果你是其他編程語言轉(zhuǎn)過來的例如 C、 Java 、Python 、JavaScript 、Swift 等
    發(fā)表于 12-15 10:53 ?2107次閱讀

    適合嵌入式設(shè)備開發(fā)的編程語言Rust語言

    Rust語言是二十一世紀(jì)的語言新星。Rust被人廣泛承認(rèn)的一點,就是因為它能運行在多樣的目標(biāo)上,從桌面和服務(wù)器設(shè)備,到資源有限的嵌入式設(shè)備。
    發(fā)表于 09-12 09:39 ?3754次閱讀
    適合嵌入式設(shè)備開發(fā)的<b class='flag-5'>編程</b><b class='flag-5'>語言</b>—<b class='flag-5'>Rust</b><b class='flag-5'>語言</b>

    基于Rust開發(fā)的編程語言

    Move 是一門由 Rust 語言開發(fā)的一門面向資產(chǎn)的編程語言,最早由 Facebook (現(xiàn) Meta )投入大量的人力物力開發(fā),用于 Libra (現(xiàn) Dime )項目,處理全球性
    的頭像 發(fā)表于 11-17 12:30 ?948次閱讀