tags:

views:

746

answers:

22

Long winded title, short question:

If one wants to develop for Windows but not have to rely on any external dependency (no runtime, thus ruling out .net), what supported, alive and fully functioning* alternatives are there?

Visual Basic 6 is dead, Visual C++ is obvious and Delphi seems to be the prime choice for that, but I wonder if there are any other alternatives?

*as in: Being able to use all the Windows Features like putting an icon in the Notification Area, making the Taskbar Icon flash etc.

+7  A: 

Have a look at this -

http://www.codegear.com/products/delphi

Glynn

Glynn Owen
Seems to be indeed the prime product for Win32 (apart from C/C++).
Michael Stum
A: 

Have a look at this page:

http://dada.perl.it/shootout/

It's a port of the computer language shootout to compile on the Win32 platform. In the chart of languages used, he lists which ones compile to native code (the compiler is listed in bold italics). I did notice that he listed C# and Java as compiling to native code, but that of course is incorrect, so make sure you investigate.

I will list each language separately to allow for individual voting.

Troy Howard
+1  A: 

Ada compiled with gnat

Troy Howard
A: 

Awk using awka*

(*note: awka interprets awk, and generates ANSI C, which can be compiled to native code with any C compiler).

Troy Howard
A: 

C (lots of compilers available)

Troy Howard
+2  A: 

D using D compiler

Troy Howard
A: 

PowerBasic

+1  A: 

eiffel using SmartEiffel*

(*note SmartEiffel interprets eiffel, and generates ANSI C code, which can be compiled with any standard C compiler. It also generates Java byte code.)

Troy Howard
A: 

Forth using BigForth compiler

Troy Howard
A: 

Haskell using ghc

Troy Howard
+1  A: 

C/C++ with Borland, if you don't want to be entirely beholden to MS.

plinth
+1  A: 

Mercury using the Mercury compiler (compiles to ANSI C, which can then be compiled to native code)

Troy Howard
A: 

Modula 2 using modula2 compiler

Troy Howard
A: 

Modula 3 using Critical Mass *

(*note: compiles to ANSI C, which can compile to native code using any standard C compiler)

Troy Howard
A: 

OCaml compiled with OCaml compiler

Troy Howard
A: 

Pascal with FreePascal compiler

Troy Howard
A: 

Prolog using Visual Prolog

Troy Howard
+1  A: 

Vala (compiles to ANSI C)

Troy Howard
A: 

Ubercode using UberCode compiler

Troy Howard
A: 

Goo using Goo compiler (generates ANSI C)

Troy Howard
A: 

Haskell using GHC. Compiles via C or direct to native code requiring no special libraries.

Chris Smith
A: 

REALbasic which gives you the extra benefit of being able to compile for Mac and Linux as well.

Andy Dent