The Single Paradigm Access GUI Layer (SPAGL) attempts to accomplish three goals.
The first is to allow Java developers to switch between Sun Microsystems' Swing library and the IBM-backed Standard Widget Toolkit (SWT) by changing only one line of code per file. Second, it attempts simply GUI (graphical user interface) development by providing widgets that abstract or eliminate the need for "models". Third, SPAGL completely removes anonymous inner classes from the event system. The only things that need to be specified are the events to listen for, the methods to execute, and the objects to execute them in. All of this is done in order allow projects the freedom to easily switch between GUI libraries, learning developers to have easier access to GUI toolkits, and to enable experienced programmers to create code at a much faster pace.