Euphoria語言和 Perl,C 和 Java 有許多相似之處。但是,也有一些明確的語言之間的差異。本章的目的是迅速讓你了解 Euphoria 的語法。.
本教學假定您正在使用Linux平台,所有的例子已經寫。但我沒有觀察到任何 Linux 和 WIN32程式語法上的差異,所以在Win32中,你可以按照相同的步驟。
讓我們寫一個簡單的 Euphoria 指令碼程式。因此,把下面的原始碼一個test.ex檔案,並儲存它。
#!/home/euphoria-4.0b2/bin/eui puts(1, "Hello, Euphoria!\n") |
假設,Euphoria 的直譯器是 /home/euphoria-4.0b2/bin/ 目錄中可用。現在嘗試執行此程式如下:
$ chmod +x test.ex # This is to make file executable $ ./test.ex |
這將產生以下結果:
Hello, Euphoria! |
該指令碼使用了Euphoria 一個內建函式puts(),它接受兩個引數。第一個引數表示檔案名或裝置號碼,第二個引數表示要列印的字串。在這裡,1表示標準輸出裝置。
Euphoria 識別符號是用來識別一個變數,函式,類,模組,或其它物體的名稱。識別符號以字母A到Z或a到z,然後遵循字母,數位或下劃線開始。
Euphoria 不允許標點符號,如 @, $, and % 以內識別符號.
Euphoria 是區分大小寫的程式設計語言。因此Manpower 和manpower 是兩個不同的識別符號。有效識別符號的例子:
下面的列表顯示Euphoria 中的保留字。這些保留字不能用作常數或變數,或任何其他識別符號名稱。
關鍵詞只包含小寫字母。
and | exit | override |
as | export | procedure |
break | fallthru | public |
by | for | retry |
case | function | return |
constant | global | routine |
continue | goto | switch |
do | if | then |
else | ifdef | to |
elsedef | include | type |
elsif | label | until |
elsifdef | loop | while |
end | namespace | with |
entry | not | without |
enum | or | xor |
Euphoria 可以讓你形成表示式的計算結果。然而,在Euphoria 可以對整個資料序列進行計算一個表示式。
可以處理一個就像將一個單一的數位序列。傳遞給一個子程式,它可以被複製或計算時作為一個單元。例如:
{1,2,3} + 5 |
是一種表達,增加了序列{1,2,3}和原子5得到結果序列{6,7,8}。在隨後的章節中會學到序列。
第一告誡程式員之一時遇到學習 Euphoria 是沒有括號來表示程式碼塊的過程和函式定義或流量控制。程式碼塊是由相關的關鍵字表示。
下面的例子是 if...then...end if 塊:
if condition then code block comes here end if |
Euphoria 報表通常一個新行結束。但是Euphoria 允許在多行寫一個單獨的語句。例如:
total = item_one + item_two + item_three |
使用反斜槓跳脫字元輸入。例如:
下表是跳脫或反斜線符號可以表示非列印字元列表。
反斜線符號 | 描述 |
---|---|
\n | Newline |
\r | Carriage return |
\t | Tab |
\\ | Backslash |
\" | Double quote |
\' | Single quote |
被編譯器忽略任何注釋和執行速度沒有影響。明智的做法是在你的程式中使用更多的注釋,使其更具可讀性。
注釋文字有三種形式:
Euphoria 注釋是由兩個破折號開始,延伸到當前行的末尾。
多行格式註釋內保持 /* ...*/,即使發生在另一行內。
在第一行程式可以使用一種特殊的注釋開頭的兩個字元的序列 #!.
#!/home/euphoria-4.0b2/bin/eui -- First comment puts(1, "Hello, Euphoria!\n") -- second comment /* This is a comment which extends over a number of text lines and has no impact on the program */ |
這將產生以下結果:
Hello, Euphoria! |
註: 在第一行頭(只有)程式可以使用一種特殊的注釋開始用#! ,此通知檔案在Linux shell 使用Euphoria 直譯器執行。