V jazyce GEL jsou podporovány následující porovnávací operátory a mají obvyklý význam: ==, >=, <=, !=, <>, <, >. Vrací true nebo false. Operátory != a <> jsou stejné a znamenají „není rovno“. GEL podporuje také operátor <=>, který vrací -1, když je levá strana menší, 0, když jsou si strany rovny, a 1, když je levá strana větší.
	Normally = is translated to == if
	it happens to be somewhere where GEL is expecting a condition such as
	in the if condition.  For example
	
if a=b then c
if a==b then c
	are the same thing in GEL.  However you should really use
	== or := when you want to compare
	or assign respectively if you want your code to be easy to read and
	to avoid mistakes.
      
Všechny operátory porovnávání (vyjma operátoru <=>, který se chová normálně) nejsou striktně binární operátory, takže mohou být seskupovány běžným matematickým způsobem, např. (1<x<=y<5) je platný pravdivostní výraz a znamená přesně to, co by měl, což je (1<x a x≤y a y<5)
Pro sestavení logických výrazů používejte slov not, and, or a xor. Operátory or a and jsou zrádné v tom, že vyhodnocují své argumenty jeden po druhém, takže zde funguje obvyklý trik pro podmíněné vyhodnocení. Například 1 or a=1 nikdy nenastaví a=1, protože první argument je pravdivý.