The Icon programming language forms the main basis for Wrapl's execution model. It is a mature project and has not had any major changes to language in some time. In my opinion, Icon is probably the best scripting language ever made, and it is only the lack of newer language features such as object-orientation and multiple dispatch that pushed me to develop Wrapl in the first place. The first Wrapl compilers were written in Icon.
The Unicon programming language is an extended dialect of Icon which also adds object orientation to the language. However it maintains 99% backwards compatibility with Icon and targets the same/very similar virtual machine.
The Modula-3 programming language is the a descendant of the Modula-2/Pascal family of languages. It provides object-orientation, generic modules, garbage collection and probably the best module system ever. It also comes with a huge library including a platform independent gui toolkit. Basically the best application development language I have ever come across. Several Wrapl compilers were also written in Modula-3 and the last Modula-2/Oberon-2 version was based on the last Modula-3 version.
The XDS compiler compiles both Modula-2 and Oberon-2 (and allows features from each language to be mixed) and is altogether an excellent development enviroment. It does not come with a large library but the installation is small and straightfoward and is able to interface nicely with libraries written in C. The second last Wrapl compiler was written with this compiler.
Cecil is a prototype based object oriented language which uses multiple dispatch (including predicate dispatch) to form quite a powerful language. It does not have a module system yet and the compiler takes a long time to compile even simple programs producing very large executables, but the language is still worth looking at. There was a Wrapl compiler written in Cecil, I've lost it now but the experience was useful in adjusting multiple dispatch features in Wrapl.
C is a programming language. I don't particularly like it, but since I have now written my compiler/loader in it, I feel it deserves a link.
Nasm is in my opinion the only x86 assembler that can be used to write large programs. Although the Wrapl compiler has been written in several different languages, the runtime has always been written in Nasm.
Yasm is a new(er) assembler which accepts Nasm syntax. I used this assembler when a bug in Nasm interrupted development. However that bug has since been fixed, and now I use them both.
Crimson Editor has been my editor of choice on Windows for a long time.
EDB (Evan's Debugger) is a good assembly level debugger for Linux which has stopped me from going insane more than once.
Ollydbg is an excellent assembly level debugger for Windows.
CC386 is a good open source C compiler that is easy to modify and can produce Nasm assembly code.
Pelles C is a good C compiler that was used to develop an older version of the compiler/loader.
Code::Blocks is an excellent I.D.E. for both Windows and Linux. It is easy to configure it to work with many compilers, including using GCC + rlink to produce .riva modules.
GCC is a C compiler. That's all I'm going to say about it.
GTK+ is a great GUI toolkit for many platforms, including Windows and Linux. Originally, I used it only to develop the Wrapl debugger, but now Wrapl has a fairly complete binding, allowing Wrapl to be used to write proper GUI applications.
As strange as it seems, Lua is used as part of the linker rlink, it's library import/export definition files are Lua scripts with a number of predefined functions.
MusicDisruption is an online digital music service to create, remix, share and discover music. The back-end for MusicDisruption is written in Wrapl, using Elasticsearch as a database.