angela

編程語言

Angela 是一個部分面向問題的編程語言,語法上吸收DELPHI、VB、C、Flash的優點,功能上全面超越VBS(兼容所有VBS語句,所有的VBS功能都能在Hus Angela中使用),並有所創新,比如自動判斷數據類型。

簡介


一行代碼調用File System Object;在WHILE、UNTIL、SELECT、FOR、IF、IFX加上“標籤”參數,方便編程者識別;支持畫圖函數;加入7個圖形對話框;內置48個數學函數(許多VB里沒有),大部分VB里的時間、字元串、財務、文件操作函數。

大事記


2006-6-22:開始開發Angela。
2006-6-30:成功開發Angela 1,可以進行基本數學運算。
2006-12-17:成功開發Angela 2,可視為VBS的簡化版本。
2007-5-6:成功開發Angela 3,可以利用CMD擴充功能。
2007-11-28:成功開發Angela 4,完全兼容VBS,支持多層判斷、循環。
2008-1-26:成功開發Angela 5,功能基本完善,真正算是“編程語言”。
2008-5-29:推出基於Angela 5構架的成熟版本Hus Angela 2008。
2008-10-21:推出基於Angela 5構架的最後版本成為了Hus Angela 2008 SP5。

語法規則


變數:1~256字元,可以是中文;不可含有除“-”和“_”以外的符號。各函數名、關鍵字、自定義常量、agSIGN1、agSIGN2、agSIGN3都不可以使用。如:TEST、A-B、A_B
常量:1~256字元,可以是中文;不可含有除“-”和“_”以外的符號。各函數名、關鍵字、自定義常量、agSIGN1、agSIGN2、agSIGN3都不可以使用。常量一旦設置就不可改變。
字元:任意長度字元串,用英文單引號包住。在函數中不可含有英文逗號和中文逗號(Setvar、Set、Cst函數除外)。若要使用,在Join函數中可以用常量agSIGN1、agSIGN2代替。回車符用agSIGN3代替。如:'hello'、'Drive Info'
標記:#英文字元串,不可含有豎線(|),必須使用相同的大小寫,用於GOTO語句的轉跳。如:#SIGN1。#SIGN1和#sign1視為兩個不同的標記。
表達式:變數、字元串、運算符(/=/<=/>=/<>)、邏輯符(AND/OR/NOT)、括弧要用空格隔開,並用中括弧包住。如:[a > b AND ( c <= d OR e = f ) AND g <> h]
關鍵字:IF、IFX、SELECT、FOR、WHILE、UNTIL、FUNCTION和這幾個語句的參數必須大寫,否則會無法識別。

語句


賦值語句:
SET 變數 = 變數/字元串
計算語句:
變數 = 算數表達式(註:各個數字、變數、括弧、運算符之間要有一個空格)
條件語句:
I.單獨條件語句:
IF (名稱),[條件]
條件成立時的語句
ELSE (名稱)
條件不成立時的語句
IFEND (名稱)
II.多重條件語句:
IFX (名稱),[條件]
條件成立時的語句
IFX (名稱),[條件]
條件成立時的語句
IFX (名稱),[條件]……(還可以有65533組)
條件成立時的語句……(還可以有65533組)
IFXELSE (名稱)
條件為其它時的語句
IFXEND (名稱)
III.SELECT條件語句:
SELECT (名稱),變數
條件成立時的語句
CASE (名稱),值
條件成立時的語句
CASE (名稱),值……(還可以有65533組)
條件成立時的語句……(還可以有65533組)
CSLS (名稱)
條件為其它時的語句
SLEND (名稱)
循環語句:
I.WHILE循環:
WHILE (名稱),[條件]
條件成立時的語句
LOOP (名稱)
II.UNTIL循環:
UNTIL (名稱),[條件]
條件成立時的語句
LOOP (名稱)
III.FOR循環:
FOR (名稱),變數,初值,終值,步長
循環時執行的代碼
NEXT (名稱)
Angela函數大綱:
AR1 操作,參數1,參數2,參數3
AR2 操作,參數1,參數2,參數3,參數4,[參數5]
AR3 操作,參數1,參數2,參數3,參數4,[參數5],[參數6],[參數7]
ASK 返回變數,按鈕,提示,[標題],[圖標]
BEEP
CALC 算術符號,存入變數,數字1,[數字2]
CFS 文件名,執行標誌,是否刪除
CLEANVAR 多個變數
CLIPBOARD 操作,參數
CMD 命令,存入變數
CPS 程序名,執行標誌
CST 常量名,內容
CUF (自定義函數名)
DRAW 操作,[參數1],[參數2],[參數3],[參數4],[參數5],[參數6]
DRIBOX 返回變數,[標題]
END
EQL 存入變數,算術表達式
EXTF 函數名,參數,參數文件名,等待時間
FILEBOX 存入變數,文件框標題,文件類型,起始路徑,用途
FINANCE 存入變數,操作,參數1,參數2,參數3,[參數4],[參數5],[參數6]
FOLDERBOX 返回變數,[標題]
FSO 存入變數,操作,參數1,參數2
FUNCTION (自定義函數名)
GETFILE 存入變數,輸入文件,[參數]
IIF 存入變數,條件,文字1,文字2
INPUT 變數,提示,[標題],[輸出文件]
IPE 變數,任務列表,程序名
JOIN 存入變數,多段文字
KILLTASK 參數
KPG
MATH 存入變數,操作,參數1,參數2,參數3
MEDIABOX 媒體文件路徑,[標題]
MID 字元串1,起始位置,長度,[字元串2]
MONOCHECKLIST 變數,[標題],加入項,返回模式,顯示菜單,[全存變數]
MULTICHECKLIST 變數,[標題],加入項,返回模式,顯示菜單,[全存變數]
OUTPUT 提示,[標題],[圖標]
PICBOX 圖片路徑,圖片框標題,[sdp]
PKB 按鍵
PUTFILE 內容,輸出文件
REG 操作,鍵名,[參數]
REST
SETVAR 變數名,內容
SHELL 文件,[參數],存入變數
SLEEP [時間]
STR 存入變數,操作,參數1,參數2,參數3
TASKLIST 變數名,模式
TEXTBOX 文件名,文本框標題,鎖定狀態,存入變數,[預設文字]
TIMEDATE 存入變數,操作,參數1,參數2,參數3
UFB (用戶函數名)
VBS 操作,[參數]
WEBBOX url,[標題]
Angela程序樣式:
PROGRAM ProgramName
//註釋
CODE
CUF (UserFunctionName)
END
FUNCTION (UserFunctionName)
CODE
UFB (UserFunctionName)
Angela常量:
CNCM/AgSIGN1: 中文逗號
ENCM/AgSIGN2: 英文逗號
CRLF/AgSIGN3: 回車符
APPPATH: 程序根目錄(含反斜杠,如”c:\windows\MyPROGRAM\”)
EXENAME: 程序名稱

所獲獎項


第九屆全(中)國中小學生電子作品大賽省二等獎
第九屆全(中)國中小學生電子作品大賽市一等獎

作者簡介


胡文亮,中國廣東省廣州市的一名中學生。
*取名為Angela的原因:
該語言的編寫者最喜歡的明星是張韶涵。
Angela截圖:
Angela解釋器主界面
Angela解釋器主界面