Hacker News new | past | comments | ask | show | jobs | submit login

And I don't even understand why he doesn't agree that C is a second-class citizen on Windows. Microsoft would rather have you code stuff in C++ or .Net and MSVC is stuck with the C90 standard (although apparently that is finally improving)



On the bright side, the author's hate for implicit make-rules, and inability to grasp the pedagogic value of showing implicit includes first, and -Wall later made me go and test the following in a "command prompt for VS2013" on windows:

  >more hello.c
  int main(int argc, char *argv[])
  {
    puts("Hello world.");
    return 0;
  }

  >cl hello.c
  Microsoft (R) C/C++ Optimizing Compiler Version 
  18.00.31101 for x86
  Copyright (C) Microsoft Corporation.  All rights reserved.

  hello.c

  Microsoft (R) Incremental Linker Version 12.00.31101.0
  Copyright (C) Microsoft Corporation.  All rights reserved.

  /out:hello.exe
  hello.obj

  >hello
  Hello world.
Things are getting better.


> the author's hate for implicit make-rules

My reading was that the author just didn't know about implicit make rules. Shaw's book apparently suggests using "make" to compile and link a simple C program. The author goes on at some length about not being able to find the Makefile, apparently unaware that no Makefile is necessary.

The "make" command is rarely used without a Makefile, so this is a fairly easy mistake to make.


Yeah, that's great.

Now try it using some features from that super-recent, edgy, C standard from 16 years ago, C99.


>Things are getting better.

In what sense? MS platform had a working C compiler for decades.


Working, and "easy to use" isn't the same thing. For one thing, this is a gratis compiler from MS.


Not quite sure what is new here. The MSVC compiler has been available for free for close to a decade at least and command line compilation was available ever since I first used it (in the mid 90s)


I wasn't aware of that. I suppose it came with the driver dev kits? I've not really been into windows development, but I thought I'd at least have brushed up it accidentally if one could use the official MSVC compiler to produce shareware and commercial software for free?

Were there any (free) IDEs that took advantage of this? I thought one of the reasons Stevens used DJGPP was that MSVC wasn't available for free? I suppose I could just be that it wasn't freely distributable, which makes it hard to bundle with a book (at a time when people can't just go and download megabytes of data from microsoft.com).

Or maybe MSVC was free, but not the c++ part? See eg:

http://www.atarimagazines.com/compute/issue162/52_Windows_pr...

(It's not my intention to move the goalposts, you say close to a decade, which means 2005 -- it's quite likely that I'm just biased due to my old age...)

I did find this: http://blogs.msdn.com/b/vcblog/archive/2006/06/08/622485.asp...

Which reminded me of VS express -- which isn't the same as a full version (but should/did work for "hello, world!"). See also eg: http://www.i-programmer.info/news/89-net/7976-full-visual-st...

How did you get a free c-compiler from MS in the mid 90s?


I did literally mean a decade for the compiler (so 2005). While it is not a full IDE by any means, VS Express did include the standard VS compiler. You could compile most standard C programs on windows with that. For some time prior to that you could get a compiler with the DDK as well (but I don't remember since when; it has been a long time). Of course express didn't pack some of the libraries that came with VS; you could get most of them via the SDK and DDK however.

In the 90s though, I used the non-free VS for the most part along with some Cygwin until Mingw's appearence in the late 90s.


I don't think it was free, but again entire Microsoft toolchain wasn't free in 90s, so nothing special about C here.


When Windows first came out, the ONLY programming language for it was C. Nothing else.


Arguably, the only programming environment that's been bundled with windows is qbasic...?


Assembly was always an option, though a painful one.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: