Falcon (程式語言)

Falcon編程語言，又叫做Falcon P.L.、Falconpl或者Falcon，係一個開源、多範式嘅編程語言，佢嘅設計同埋推廣由Giancarlo Niccolai領導。

核心 
同關注喺一個編程風格或者範式唔同，Falcon喺一個簡單嘅框架入面融合咗幾種唔同嘅風格。喺實現級別上面，Falcon係「服務概念」驅動，當唔作為一個單一嘅工具畀人用嘅時候，腳本引擎畀人當做一個服務腳本，模塊同埋內嵌嘅應用。

Hello Falcon 

即使有唔同形式嘅基本I/O，一個「hello world 例子都可以用fast print：

> "Hello World!"

用到Unicode，下面係一個國際化例子嘅介紹：

// International class; name and street
  class 國際(なまえ, Straße)
     // set class name and street address
     नाम = なまえ
     شَارِع = Straße
     // Say who am I!
     function 言え!()
       >@"I am $(self.नाम) from ",self.شَارِع
     end
  end
  // all the people of the world!
  民族 = [國際("高田 Friederich", "臺灣"),
     國際("Smith Σωκράτης", "Cantù"),
     國際("Stanisław Lec", "południow")]

for garçon in 民族：garçon.言え!()

數據類型 
 Nil - The nil關鍵字，一個空值。
 Integer  - 一個64位整數值。
 Numeric - 一個IEEE 64位浮點值。
 Range - 一組上限，下限同埋步長。
 MemBuf - Raw內存緩衝，每一個地址係一個無符號嘅1,2,3,或者4字節整數。
 Function - 函數。
 String - 唔定長嘅UNICODE字符序列。
 Array - 唔定長嘅元素序列。
 Dictionary - 唔定長有序鍵/值對嘅集合；鍵能係任何Falcon元素。
 Object - 來源喺類嘅實例或者單一嘅非類對象。
 Class - 可以創建實例嘅類，實體。
 Method - 實例冇變嘅部分，用函數形式關聯。

特色 
Falcon完整咁支持模塊化編程，Falcon裝載著特色，標準模塊套件。特色依家有嘅模塊包括：

編譯器 - 反射型編譯器同埋動態插件引導器。
 配置分析器 - 完成配置文件分析支持。
 MXML - 非常快速同埋簡潔嘅迷你XML分析器。
 正則表達式 - PCRE 7.x兼容正則表達式庫接口。
 套接字 - BSD套接字跨平台網絡支持。
 ZLib - 簡潔嘅壓縮程式接口。

實現 
核心VM同埋官方模塊，都係用C++寫嘅，一啲好底層嘅模塊同引擎元素係用C語言同集匯程式寫。

可用資源 
喺Mac OS X同埋MS-Windows系統上面Falcon透過安裝程式發布，令到構建同埋安裝變成一個清晰嘅過程，或者喺唔同嘅開源系統例如Linux或者OpenSolaris上面透過自己整源代碼包。

喺後者嘅系統上，Falcon編程語言通常支持各種發行版本仲會保持更新嘅，其中有：

Ubuntu
 Fedora
 Gentoo
 Slackware
 Arch Linux

喺基於Solaris系統嘅發行版本上面透過Blastwave項目同埋OpenSolaris系統嘅AuroraUX發行版本Falcon編程語言係可用嘅。

Falcon網站
文檔
Falcon community wiki
Falcon community論壇
linuxjournal上的相關文章
發表在Free Software Magazine

類:程式語言