Visual programming languages (VPLs) let programmers instruct computers by drawing images or symbols, much like those seen in the mind when humans consider a solution to a certain problem. The images inform the computer, and other humans working on the program. Images are usually boxes, circles, or bubbles, treated as screen objects, connected by arrows, lines or arcs. Programming is done using visual methods to express relationships among, or transformations to, data; methods include sketching, pointing, demonstrating via direct manipulation. The software then creates any needed lower-level code. Visual Basic, Visual C++, etc., are not visual languages, but do use a few crude, primitive elements of visual programming. On this page, languages are arranged in three groups and levels: 1) Top group: issues spanning multiple unrelated languages. 2) Middle group: types or classes of languages. 3) Bottom group: specific languages, with their own directory category.