The Peep of Lil

At long last, my subterranean labors have come to fruition, and it is time to emerge from my cave, blinking in the searing light of the daystar, and trumpet the public release of Decker, a HyperCard-inspired pixel-perfect holistic programming environment. In my famously unbiased opinion, one of Decker’s juiciest morsels is Lil, the scripting language which serves as a substitute for HyperTalk. At first blush, Lil is almost unbearably unassuming:

on lies x do
	if x > 1
		lies[x-1]+lies[x-2]
	else
		x
	end
end

Don’t be deceived by initial appearances, dear reader: beneath its Lua-skin suit, Lil blisters and oozes with a remarkable and innovative collection of Bad Ideas. For example,

Have we scared all the PLT weenies off yet? Alright, then- let’s look at some of the Good Ideas, too:

sound[16*sin(440/8000)*2*pi*range 8000]

on oval pos size do
 flip pos+size*flip unit 2*pi*(range 20)/20
end
on mode a do
	extract first key orderby value desc from
	select key:first value value:count value by value from a
end

Lil is easy to learn, and easier to forget. It provides boons and flaws in equal measure. It’s got moxie. Personality. Curb appeal. Favorable zoning. Good fixer-upper. Excellent freeway access and local elementary schools. You can love it, or simply not notice it’s there.

Even among those who will use Decker, I imagine many Lil scripts will never grow more complex than:

on click do
	score.value:score.value-10
	play["fart noise"]
end

Nonetheless, should users ever desire more of this curious, humble language, I believe they will find it- whatever, precisely it may be- in abundance. Happy Lil-ing, Lilateers1.

Appendix A: The Tao of Lil

  1. The Lil Manual
  2. Decker Project Page

back


  1. Yes, that‘s canon. That’s what a Lil programmer is officially called. Accept no substitutions.  ↩︎