A Harbour programozási nyelv

Nyelvi elemek

Jelkészlet

A Harbour ismeri a Unicode jelkészletet. Azonosítót megnevezni csak bizonyos karakterekkel lehet, viszont a szövegkonstansok között már szabadon használhatók Unicode karakterek. A Harbour más xBase nyelvekhez hasonlóan nem kis-nagybetű érzékeny, és minden kulcsszava használható rövidített formában, csak az első négy betűt leírva. A szintaxisra mindig jellemző, hogy megtartja a kompatibilitást a Clipperrel.

Azonosítók

Minden típushoz rendelhető változónév. Ez az azonosító legalább egy, legfeljebb 63 karakterből állhat. A változó nevében csak az angol ábécé betűi, aláhúzásjelek és számok fordulhatnak elő. Az első karakternek betűnek kell lennie. Nincs különbség a nagybetűk és kisbetűk között.

Literálok

A szövegkonstansokat idézőjelek, aposztrófok vagy szögletes zárójelek közé kell tenni. A szövegkonstansokban a közrefogó karaktert kivéve akármilyen Unicode karakter előfordulhat, vagy akár üres is lehet. A string hossza tetszőleges, csak a memóriától függ. Numerikus literálok a következőképpen írhatók: 1, 1.1, -1, 0xFF. Logikai igaz és hamis literál a .T. és a .F. jelsorozat. Dátum literál például a 0d20110103 jelsorozat. Nil literál a NIL. Egy tömb leírható úgy, hogy az elemeit egymástól vesszővel elválasztva kapcsoszárójelbe tesszük (például a { "String"", 1, { "Nested Array" }, .T., FunctionCall(), @FunctionPointer() }). A nyelvben létezik kódblokk, erre egy példa: { |Arg1, ArgN| Arg1 := ArgN + OuterVar + FunctionCall() }. Hashre egy példa: { "Name" => "John", 1 => "Numeric key", { "Nested" => "Hash" } }.

Megjegyzések

Kommentezni C++ nyelvhez hasonlóan lehet /* és */ jelek között vagy // jelekkel a sor végéig.