MSWLogo is a programming language which is interpreted, based on the computer language Logo, with a graphical user interface (GUI) front end. It was developed by George Mills at the Massachusetts Institute of Technology (MIT). Its core is the same as UCBLogo by Brian Harvey. It is free and open-source software, with source code available, in Borland C++. MSWLogo supports multiple turtle graphics, 3D computer graphics, and allows input from ports COM and LPT. It also supports a windows interface, so input/output (I/O) is available through this GUI, and keyboard and mouse events can trigger interrupts. Simple GIF animations may also be produced on MSWLogo version 6.5 with the command gifsave. The program is also used as educational software. Jim Muller wrote The Great Logo Adventure, a complete Logo manual using MSWLogo as the demonstration language. MSWLogo has evolved into FMSLogo: An Educational Programming Environment, a free, open source implementation of the language Logo for Microsoft Windows. It is released under the GNU General Public License (GPL) and is mainly developed and maintained by David Costanzo. Features MSWLogo, as of version 6.5b, supports many functions, including: TCP/IP Winsock networking Win16, Win32, Win32s Text in all available fonts and sizes. 1024 independent turtles. Bitmapped turtles Bitmap cut, paste, stretch Clipboard text and bitmaps MIDI devices Direct I/O to control external hardware Serial and parallel port communications Zooming Tail recursion: optimizes most recursive functions User error handling Standard Logo parsing Save and restore images in .BMP format files Color bits per pixel: 1, 4, 8, 16, 24 Standard Windows hypertext help Standard Windows printing Separate library and work area Construction of Windows dialog boxes Event driven programming: mouse, keyboard, timer Multimedia devices: WAV sound files, CD-ROM control, etc. Event timers allowing multiprocessing 3D perspective drawing: wire-frame and solid Animated GIF generation References External links Interpreters (computing) Educational programming languages Logo programming language family