News for hackers. Stuff that matters.
Re:Announcing Rust 1.14 by oblio on Thursday December 22, 2016 @04:10PM (#13240419)
I have a question for Rust users: let's say I'd want to write a system tool that has to run on multiple platforms (Windows/Linux/Mac) and that would integrate with all sorts of command line utilities.

I'm interested in using Rust, but would Rust be a good fit for this? The tool would be long lived so I'd want a statically typed language with a modern type system and as many safety guarantees as possible. But I'd also want a high level programming language and also libraries that would help with that integration (launching processes, capturing output, monitoring progress, parsing output: text, JSON, XML, etc., etc.). I'd also want a tool that runs quickly but I figure there's no point in mentioning that in a thread about a language that compiles to native code and that has no garbage collector :)

Re:Announcing Rust 1.14 by nekohacker on Thursday December 22, 2016 @04:15PM (#13240447)
Rust sounds perfect for what you want to do. It takes a bit of practice to get used to its parsing, since it's extremely safe, but when you get things running, they run very well. As for cross-platform capabilities, it has fairly mature support across all the mainstream OS platforms, and developing support for others such as ARM. Check out this page (https://forge.rust-lang.org/platform-support.html) for more information on Rust's platform support.
Re:Announcing Rust 1.14 by stymaar on Thursday December 22, 2016 @05:21PM (#13240918)
I totally agree.

@oblio you should have a look at the “24 days of Rust” blog series[1] which covers a lot of aspect of the Rust ecosystem (serialization, error handling, path management, configuration handling etc.)

[1] https://siciarz.net/24-days-of-rust-working-json/

Re:Announcing Rust 1.14 by steveklabnik on Thursday December 22, 2016 @04:13PM (#13240441)
This should be an area of strength in Rust, at least conceptually. If a systems language can't write system utilities, well...

There is at least some degree of support for everything on your list, though it's kinda hard to tell with some of the ways in which you're being vague (not that that's bad, mind you, just recognizing that this answer is also kind of generic because of it.)

Re:Announcing Rust 1.14 by dochtman on Thursday December 22, 2016 @04:14PM (#13240444)
I'm not quite sure what you mean when you say "integrate with all sorts of command line utilities", but based on the other things you write I could not think of a better language than Rust.

Since I started to write some Rust code about 6 months ago, Rust has replaced Python as the language I think in. Static typing with a modern typing system is awesome, and not having to think about a GC is also awesome (see also the recent Medium article about all the ways GC's need to be tunable).

Re:Announcing Rust 1.14 by vvanders on Thursday December 22, 2016 @05:10PM (#13240827)
In short: Yes!

Process launching/capturing output/etc is there and very robust across platforms. Most of the other stuff you've mentioned I've seen support for but haven't used it in anger yet.

Bonus: Cross-compiling to other platforms is straightforward so you can build OSX/Linux/Windows all from one box.

Re:Announcing Rust 1.14 by kibwen on Thursday December 22, 2016 @07:52PM (#13241894)

  > let's say I'd want to write a system tool that has to run 
  > on multiple platforms (Windows/Linux/Mac) and that would 
  > integrate with all sorts of command line utilities.
Sounds like you'd enjoy taking a closer look at ripgrep, which is exactly what you describe: http://blog.burntsushi.net/ripgrep/
Re:Announcing Rust 1.14 by hacker_9 on Thursday December 22, 2016 @07:23PM (#13241755)
You just asked in a Rust thread if Rust was a good language to use...
Re:Announcing Rust 1.14 by kibwen on Thursday December 22, 2016 @07:56PM (#13241916)
For years we actively told people not to use Rust, to run far far away, because we were still breaking things and didn't want anyone mad at us. Now that we're past 1.0, we've got a lot of catching up to do. :)

(But seriously, we're usually quick to tell people when Rust isn't a good fit for their problem domain. It just so happens that the grandparent comment is describing a domain that Rust is really quite suited for.)

Re:Announcing Rust 1.14 by throatfuck on Thursday December 22, 2016 @04:30PM (#13240559)
I'd recommend Scala(JVM, .js, Native, season to taste)