Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!usenet.blueworldhosting.com!feeder01.blueworldhosting.com!feeder.erje.net!eu.feeder.erje.net!eternal-september.org!feeder.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: =?UTF-8?B?Sm9zaHVhIENyYW5tZXIg8J+Qpw==?= Newsgroups: comp.lang.java.programmer Subject: Re: What's the best non-JVM native language to look at? Date: Fri, 17 Jan 2014 10:28:37 -0600 Organization: A noiseless patient Spider Lines: 35 Message-ID: References: <428f8206-d4f7-4fe6-b93c-8f881b498be6@googlegroups.com> <99qdnVXamdWBRErPnZ2dnUVZ8mOdnZ2d@bt.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Fri, 17 Jan 2014 16:28:39 +0000 (UTC) Injection-Info: mx05.eternal-september.org; posting-host="8b6ddcc38ecbed2f71b30fabadb8aa0b"; logging-data="24691"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+jjzcnynmVFluvd8QRdjuzf6xNCuL32T8=" User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Thunderbird/27.0 In-Reply-To: <99qdnVXamdWBRErPnZ2dnUVZ8mOdnZ2d@bt.com> Cancel-Lock: sha1:Xu6+xMJQItPlnMCcLEnVyzCIB0w= Xref: csiph.com comp.lang.java.programmer:27333 On 1/16/2014 7:05 AM, lipska the kat wrote: > I can't think of a language that isn't ultimately implemented in C. Zero-cost exception handling cannot be expressed in (ISO) C code (or, at the very least, not in a way that a C compiler will faithfully compile it--in the situation that would arise, clang and gcc are both extremely happy to mangle the code, even at -O0). Well, MSVC has __try/__catch, but that's not ISO C. > If you think about it, any language *other* than C is simply a high(er) > level interface to C (ignoring assembler of course). Even C compilers > are written in C (go figure :-) Clang is written in C++. GCC is written in C++ as of 4.8. MSVC is written in C++. I'm pretty sure icc is also written in C++. Open64 appears to be in C++ as well. Which means that all the C compilers which find major use are written in C++, not C. > Unless there is a revolution in the development of software development > languages I can't see C becoming obsolete any time soon. If you spend > time with C it will help you with almost any other language you can > think of. It's a no-brainer AFAICS. Use Java to earn good money, learn C > as an essential addition to your skill set. I have reached the point where I find C unusable as a programming language. While it lets you bury yourself in details and change things to your hearts content, it also requires that you bury yourself in details--you can't convert C code into partially-managed memory like you can in C++ with std::shared_ptr or std::unique_ptr. Also, C lacks a usable standard library (no hash maps, no auto-growing arrays). And I can go on and on. -- Beware of bugs in the above code; I have only proved it correct, not tried it. -- Donald E. Knuth