OK. Here's the background. I've got a old program XLISP that I want to bring up to snuff on OS X. You can look at the link, but basically it originally was a command-line program that needs a console/terminal for its user interface. The original version had graphics capability -- keep in mind this was under MS-DOS. In the early 90's I ported it to Windows 3.1 and later to Win 95 by creating a console window that I could also draw to. Crude but effective. No framework on top of the basic Windows system calls were used. The program is 100% C and a lot of the code is pre ANSI C as well. Back to the present. Which of these approaches would make the most sense under OS X? Or is there an approach that I'm missing that's better? I basically have no Cocoa programming experience, but lots of general experience and experience in Java (which is not suitable for what I'm trying to accomplish). 1. A Cocoa solution using Objective-C but linking in the original C code. Create a console window just like I did before. 2. As in (1) but window has a one-line text box widget to type in commands and a multi-line text widget to display console output. My guess this would be considerably easier to accomplish than (1) but would it be acceptable? 3. Run from a Terminal window (which it currently does) but launch a GUI window that graphics can be drawn in. Frankly, I don't even know if this is possible (it wasn't in the MS Windows world), or if it would be upsetting to users, but it sounds like the easiest approach. 4. Forget about learning Cocoa and instead write using the Qt framework, doing one of the above three solutions. Advantage being I'd get a Linux and a modern Windows implementation for "free". Thoughts?