apple lisa borland clascal codegear codegear delphi comparison of programming languages compiler dan allen draft dynamic array freebsd free pascal gnu compiler collection gnu pascal hello world program imperative programming integrated development environment larry tesler linux ms-dos macapp mac os mac os x microsoft visual studio microsoft windows niklaus wirth object-oriented programming open source powerpc programming language programming language implementation programming paradigm run-time type information sparc structured programming symantec turbo pascal type system virtual pascal windows ce xcode