LWN.net Logo

I agree it's a big deal

I agree it's a big deal

Posted Sep 29, 2013 20:09 UTC (Sun) by HelloWorld (subscriber, #56129)
In reply to: Rust 0.8 released by ncm
Parent article: Rust 0.8 released

People have taken it for granted for far too long that programming at a high level of abstraction will incur crazy memory and/or performance penalties like those seen in Ruby, Java etc.. C++ has shown that a lot is possible, but it inherited tons of problems from C (syntax, type system, preprocessor) and is still lacking some important features (modules, proper macros, constrained templates). Also the advanced type system features that make Rust safe probably can't be added to C++ in a way that doesn't require a lot of existing software to be rewritten, thus defeating the point of extending an existing language. So I really think that Rust gives us a unique combination of features. I just hope its adoption won't be hampered by ill-designed languages trying to occupy the same niche (I'm looking at you, Go!).


(Log in to post comments)

What I'm looking for

Posted Sep 30, 2013 15:30 UTC (Mon) by emk (subscriber, #1128) [Link]

Every once in a while I try to write a medium-sized program in Go, and I always come away feeling conflicted. It really is a "much better C" (assuming you want garbage collection). But it's been a decade since I've willingly written much straight C code, and I've been using generic types and exceptions for over 20 years now. And so I doubt that Go was really aimed at me, because it deliberately excludes features that I find natural. In particular, when I try to do "exploratory" programming in Go, I end up ripping up hundreds and hundreds of lines of code every time my strategy changes. Most of this code is error-handling and manually-instantiated versions of what should be generic functions in the standard library.

I'm waiting to see if Rust will fill the niche that I really wanted Go to fill: A fast language which allows me to get close to the machine, but which also offers a pleasant variety of sensible abstractions. On some level, the last such language I used was Dylan, which made some serious mistakes, but which nonetheless tried to deliver both speed and abstractions. Oh, and Scala, but Scala is really just Haskell for people living in the Java ecosystem, except with more dubious magic.

But at this point in my life, I don't check out new programming languages unless (1) they contain non-trivial new ideas, or (2) they're reached sufficient popularity to show up in my new feeds on a regular basis and to provide a huge number of useful libraries. I can't be bothered to deal with languages that merely remix existing ideas tastefully unless they can actually gain some traction.

What I'm looking for

Posted Oct 4, 2013 17:58 UTC (Fri) by b7j0c (subscriber, #27559) [Link]

no take a trip to godoc.org and look at the mountain of libraries that have already been written. why? because Go is simple. Rust is not simple. i still hope it is a success, but it still has another year or so until it achieves both a "1.0" label from its own development team, plus enough "batteries included" to make it useful in real projects (i have seen what is available now for libraries...it would not be considered "batteries included" by modern standards)

my guess is Rust may be killed by bad timing. Go is getting huge momentum, people are already running their businesses on it and you can make a living as a full-time Go programmer (i am arguably doing this now and have been for a year). Java8 will de-stupid Java just enough that it won't be worth it for most coders to drop Java in favor of Rust. and now someone will respond by telling me Rust is designed to replace C++, not Java...nonsense. nothing is going to "replace" C++.

I agree it's a big deal

Posted Sep 30, 2013 15:46 UTC (Mon) by tjc (subscriber, #137) [Link]

> I just hope its adoption won't be hampered by ill-designed languages trying to occupy the same niche (I'm looking at you, Go!).

I agree that Rust looks promising, but hoping that someone somewhere won't do something contrary to your wishes is a false hope.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds