Paradigma | berbilang paradigma: imperatif, berstruktur, berorientasi objek |
---|---|
Muncul pada | 2008 |
Direka oleh | Jamie McCracken |
Pembangun | Projek GNOME |
Lepasan stabil | 0.11.0 (4 Oktober 2010 | )
Disiplin penjenisan | statik, kuat |
Dipengaruhi | Python, Boo, D, Object Pascal |
OS | Rentas pelantar (setiap pelantar yang disokong GLib) |
Lesen | LGPL 2.1+ |
Sambugan fail biasa | .gs |
Laman web | live.gnome.org/Genie |
Genie ialah sebuah bahasa pengaturcaraan berasaskan GObject. Bahasa ini tidak dikompilkan terus kepada kod perduaan sebaliknya diterjemahkan kepada C terlebih dahulu kemudian dikompilkan menggunakan pengkompil tempatan, contohnya gcc dalam Linux. Ciri ini membolehkan Genie menggunakan pustaka-pustaka C yang tersedia tanpa perlu diwujudkan ikatan bahasa untuknya. Sintaks bagi Genie amat menyerupai Python.
Genie menggunakan sambungan fail .gs
Sintaks
Seperti Python, setiap blok kod ditentukan dengan pengindenan. Inden dalam Genie secara lalai hanya menerima tab. Untuk mengubah tetapan ini, pengatur cara perlu meletakkan attribut indent pada permulaan fail. Contohnya, untuk menggunakan empat aksara ruang bagi menggantikan tab, kod berikut digunakan:
[indent=4]
Aliran kawalan
Pilihan
- if else
if a > 3
print "a lebih daripada tiga."
else if a is 3
print "a sama dengan tiga."
else
print "a kurang daripada tiga."
- case
case a
when 0,1,2
print "a kurang daripada tiga."
when 3
print "a sama dengan tiga."
default
print "a lebih daripada tiga."
Gelung
- for
for var i = 0 to 10
print "i ialah %d", i
- while
while a < b
a++;
Contoh
[indent=4]
init
print "Hello, World"
Pautan luar
- Genie di GNOME Live!