簡介
前言 Nim 是一個新興的通用型程式語言,根據 Nim 官方網站可知,其主要特色為 3E,即效率 (efficiency)、表達力 (expressivity)、 繼續閱讀
Nim 語言雖然不是市場主流語言,卻有著有趣的理念。本系列文章為 Nim 核心語法的教學。
前言 Nim 是一個新興的通用型程式語言,根據 Nim 官方網站可知,其主要特色為 3E,即效率 (efficiency)、表達力 (expressivity)、 繼續閱讀
安裝 Nim 由於 Nim 程式碼會先轉為 C 程式碼後,再從 C 程式碼轉為機械碼,除了 Nim 編譯器以外,還要安裝 C 編譯器。 Windows 下載 Nim 主程式的壓縮檔後,將其移到任意位置 繼續閱讀
前言 在本文中,我們介紹 Nim 語言的基本概念,像是變數 (variable)、資料型別 (data type) 等。 實字 (Literal) 實字 (literal) 是指固定的值,簡單地說,就是在程式碼中寫死 繼續閱讀
前言 在程式設計中,運算子多用符號而非文字來標記。由於運算子無法切分為更小的單位,可以視為程式語言最小的單位。本文介紹 Nim 常用的運算子。 註:Ni 繼續閱讀
前言 在預設情形下,程式執行順序是由上而下依序執行。透過控制結構 (control structure),可以改變程式運行的順序,程式好像有自己的判斷力般。控制 繼續閱讀
陣列 陣列 (array) 是線性的容器,建立後長度不可改變,陣列中每個元素的型別皆需相同。 建立陣列 使用陣列實字可建立陣列,如下例: var arr = [1, 2, 3, 4, 5] assert(arr.len == 5) assert(arr[2] == 繼續閱讀
表 (table) 是一種非線性的容器,儲存 (鍵, 值) 對 (key-value pair);Table 透過雜湊函式做為索引,可雜湊化的 (hashable) 型別即可做為鍵,而值沒有特別限定型別。大部 繼續閱讀
在這裡的 set 有兩個意思,一個是數學的集合論 (set theory),一個是在 Nim 程式所實做的集合資料結構;本文不特別介紹數學理論,而會介紹如何以 Nim 進行一 繼續閱讀
列舉 (enum 或 enumeration) 是一種特化的型別,該型別的值僅有少數幾個值,像是星期 (week) 只有星期一到星期日共七個值,而月份 (month) 僅有一月到十二月共 12 個值。在一些沒有列舉 繼續閱讀
元組 (tuple) 的用途在於可在同一個複合型別中放入不同型別的元素。如下例: type Person = tuple[name: string, age: uint] var p: Person = (name: "Michelle", age: 36U) assert(p.name == "Michelle") assert(p.age == 36U) 在本例中,我們建立一個 Person 型別,該型 繼續閱讀