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
Paradigmaberbilang paradigma: imperatif, berstruktur, berorientasi objek
Muncul pada2008 (2008)
Direka olehJamie McCracken
PembangunProjek GNOME
Lepasan stabil0.11.0 (4 Oktober 2010; 13 tahun yang lalu (2010-10-04))
Disiplin penjenisanstatik, kuat
DipengaruhiPython, Boo, D, Object Pascal
OSRentas pelantar (setiap pelantar yang disokong GLib)
LesenLGPL 2.1+
Sambugan fail biasa.gs
Laman weblive.gnome.org/Genie

Genie menggunakan sambungan fail .gs

Sintaks sunting

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 sunting

Pilihan sunting

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 sunting

for
for var i = 0 to 10
	print "i ialah %d", i
while
while a < b
	a++;

Contoh sunting

"Hello world" sunting

[indent=4]
init
    print "Hello, World"

Pautan luar sunting