Re: [公告] 本板歡迎討論 Crystal 程式語言

作者: david50407 (Davy)   2017-02-26 20:58:29
: 推 david50407: 太好了XDD 順便求大家幫忙翻譯 tw.crystal-lang.org 02/22 13:44
: 小弟我不知道 Crystal 社群需要這個
: 可否寫個文章說明一下如何幫忙
: 搞不好大家可以見證一個新語言的成長 (挺)
其實一開始我是有打算跟著版工在板上 PO 一篇「用 Crystal 寫 Gem」的教學文的
(可是工作跟學業繁忙就(ry)
關於 http://tw.crystal-lang.org 的部份是
我在接觸了 Crystal 這個語言之後發現在臺灣玩的人好像很少,
(或是還沒看到社群)
不過看到 Crystal-JP 日本的社群還滿活躍的,所以異想天開地就在 GitHub 上面
(一開始真的是異想天開想說自己有沒有機會也來帶起這個風氣(?)
開了一個 Organization 看能不能作為 Crystal Taiwan Users Group 的根據地,
(網址在此: https://github.com/crystal-tw )
裡面已經先拉了幾個也有興趣的朋友進去幫忙翻譯,
這邊先說說如果大家對於 Crystal 有興趣或是想幫忙貢獻翻譯的話,
這裡有幾個入門的方式給大家參考,先說說怎麼玩 Crystal:
首先是直接從中文入門文件開始看(就是等等我們要來翻譯的那個),
網址: http://tw.crystal-lang.org/docs/
不過裡面也是部分翻譯而已,大部分的內容還是原文……
然後對應原文版本的網址都是將 tw. 去掉就可以了
(例如中文頁面是 http://tw.crystal-lang.org/docs/installation/
那麼原文網址就是 http://crystal-lang.org/docs/installation/ )
照著裡面的安裝步驟就可以把 Crystal 裝起來,
如果你是想要自己編譯 Crystal 的,還是要請你先取得一個可以用的 Crystal binary
因為 Crystal 現在是自編譯的(用 Crystal 編譯 Crystal)。
最基本的 Crystal 用法有兩種,一個是直接執行,另一種是編譯成執行檔——
假設我們現在有一個範例程式(hello_world.cr):
puts "Hello, World!"
對的,Crystal 的語法跟 Ruby 有 87% 像呢,所以熟悉 Ruby 的同學可能會覺得我
胡嚨大家,怎麼會拿 Ruby 的程式來跑,但這的的確確是合法的 Crystal 程式哦 >.0
(一)直接執行的用法
$ crystal hello_world.cr
Hello, World!
$
預設狀態下,Crystal 會將吃進來的程式碼編譯到 /tmp 下面存放並執行,
感覺就好像是直接執行 ruby xxx.rb 一樣,但在 Crystal 的世界裡面其實
一切都要先編譯過才會執行。
(二)編譯成執行檔的用法
$ crystal build hello_world.cr
$ ./hello_world
Hello, World!
$
當執行 crystal build 的時候,他只會進行編譯並產生一個同名的執行檔,
就像是我們跑 gcc xxx.c 一般,我們可以直接執行產生的執行檔而不需要安裝 Crystal
這邊關於 Crystal 更多的用法可能要之後我才有更多時間來板上跟大家多多介紹,
接下來是要進入正題——如果我想貢獻翻譯怎麼辦?
在 Crystal-TW 下面,分別有兩個 Repo,一個是首頁的倉庫,一個是入門文件的倉庫
https://github.com/crystal-tw/crystal-tw.github.io 是首頁的倉庫,
目前只有翻譯了首頁的部分,並在頁尾加上了 Crystal-TW 的相關資訊,
不過我希望有機會的話也能把原文站的 Blog 也翻譯過來,裡面的內容也是滿有趣的
這邊跟原文站用到的工具相同,都是 jekyll,可以直接在 GitHub Pages 上面 render
如果有興趣的同好可以幫忙翻譯看看 blog post 的地方……
因為我現在主要注意的是入門文件的部分。
再來是 https://github.com/crystal-tw/docs 這部份就是前面大家看到的入門文件,
雖然我自己喜歡叫他入門文件,因為裡面的內容真的滿簡單的,也很基礎,
不過原文其實是直接叫 Docs 了,這部份是我有空就會翻譯,
然後基本上有 PR 就會 Merge,這邊用的工具是 Gitbook CLI(跟原文一樣)
這邊如果大家有興趣翻譯的話可以先看看 README.md 裡面有一些說明,
還有如果有任何的想法歡迎開 issue 出來討論或是在 Crystal-TW 的 Gitter 上面討論
大家可以 fork 回家,然後改好之後送 PR 到 master branch,
不是 gh-pages 哦,Travis CI 會在 master 有變動的時候跑 gitbook build 出
static pages 並 commit 到 gh-pages,所以大家只要安心的送 PR 到 master,
網站就會更新了!
(這部份是參考原來 Crystal 跟 Crystal-JP 的設計,如果有更好的方法歡迎提供 :D)
然後基本上最小的要求就是可能要符合 README.md 上的要點,如果你覺得哪裡做的不夠好
歡迎直接上來討論 <(_ _)>
最後你可能會問,那 API 文件呢?需不需要翻譯?
因為目前 API doc 是根據 Crystal 原始碼自動產生的,我個人是覺得不太好 sync
但如果有人有興趣的話我們也可以一起來討論,
另外就是因為我最近比較忙一點點點點,所以如果有勇者可以來幫忙維護 PR 品質的話
我也絕對可以給你 Organization 的權限XDDDD"
最後的最後,Crystal 其實是很好玩的,不過還有些 Stdlib 還在改進中,
如果大家有空有機會有想法也可以在官方的 repo 開 issue 跟大家討論
不過 Crystal 是在阿根廷誕生的,所以大部分的作息剛好跟臺灣相反,請大家有耐心
我個人比較關注的 issue 是跟類別繼承有關的還有 Windows porting 的部分,
(對,還沒有 Windows 版)
我覺得這個語言還滿有趣的,所以也可以私下來找我討論XDDD
大概就是這樣了,謝謝大家(鞠躬)
BTW, 歡迎阿公揪阿爸、樓頂揪樓腳、大家一起來推廣 Crystal XD
作者: fouring (香菇)   2017-02-26 21:08:00
推推
作者: Neisseria (Neisseria)   2017-02-26 21:09:00
推 Crystal,跟 Ruby 有 87% 相似
作者: danny8376 (釣到一隻猴子@_@)   2017-02-27 01:41:00
QQ 抱歉我掛group卻還沒commit(?不要跟我搶"用 Crystal 寫 Gem"(X
作者: a73126 (Jalen)   2017-02-27 07:38:00
推Davy
作者: firejox (Tangent)   2017-02-27 17:53:00
推推(=゚ω゚)ノ
作者: freetsubasa (小趴)   2017-02-27 21:21:00
推Davy
作者: CP64 (( ̄▽ ̄#)﹏﹏)   2017-02-28 19:33:00
圍觀推 Davy
作者: davidyun ([ 慢! ])   2017-03-04 01:17:00
作者: abc0 (haha)   2017-03-15 07:07:00
超酷的! 有效能比較嗎?
作者: soheadsome (師大狗鼻哥)   2017-06-15 20:25:00
Elixir邊緣人

Links booklink

Contact Us: admin [ a t ] ucptt.com