\begin{abstract}
End-user scripting languages are relatively easy to learn, but have
limited expressive power.  Tile-based scripting systems are
particularly accessible to beginners, but usually are very limited in
scope and usually lack extensibility, and for some tasks the tile
idiom becomes cumbersome.  Conventional programming languages used by
computer professionals are far more powerful, but at the cost of
additional complexity and limited environmental support, which place
them out of the casual programmer's reach.  This paper presents
TileScript, an attempt to combine the accessibility of a tile-based
programming interface with the leverage of a full textual programming
language and with a simple means of extension, making it potentially
an appealing tool for the novice programmer without sacrificing any
expressiveness.  All TileScript programs, whether built originally
with tiles or textually, can always be edited both graphically via a
drag-and-drop tile interface and textually, and the user can freely
switch back and forth between tile and textual representations at any
time.  Additionally, TileScript's simple yet powerful extensibility
mechanisms allow the language to be used to tackle problems that would
normally be out of the scope of an end-user scripting language.
\end{abstract}
