News for hackers. Stuff that matters.
Re:Rust 1.17 by drzaiusapelord on Thursday April 27, 2017 @04:25PM (#14214391)
Except Rust has incredible memory safety, without cumbersome and slow GC, and runs close to C++ speeds, unlike the heavy, wasteful, and slow frameworks you mention like Electron or HTML5.

Rust is a modern C/C++ replacement, or at least tries to be. That's no mean feat.

Re:Rust 1.17 by mseri on Thursday April 27, 2017 @04:53PM (#14214608)
Plus alacritty looks great and is much faster and lighter than most other terminal emulators, ripgrep is a great replacement for grep and can be a serious improvement when you are searching through millions of lines on thousands of giant files. To mention just the two of them...
Re:Rust 1.17 by Spiritus on Friday April 28, 2017 @02:21AM (#14217236)
Alacritty is full of render issues and missing features. It's fast because it barely does anything, and doesn't even do it correct. Just check the ever growing laundry list of issues it has on Github.

With that said, it's a very interesting project. Especially with regards to its rendering engine.

Re:Rust 1.17 by bpicolo on Thursday April 27, 2017 @06:40PM (#14215420)
I only use ripgrep these days.
Re:Rust 1.17 by wulfklaue on Thursday April 27, 2017 @05:38PM (#14214939)
Except that there are other languages like Go, Crystal, D, Nim that all offer memory safety ( thanks to there GC ), with a light GC ( like reference counting ). And based upon the same benchmarks that Rust in participates, they are close or even faster at times, with close or better memory usage.

https://github.com/kostya/benchmarks

Re:Rust 1.17 by bnolsen on Thursday April 27, 2017 @10:09PM (#14216413)
GCs are nondeterministic amongst other issues. Baking one into the core of a systems language likely isn't a good idea.
Re:Rust 1.17 by pjmlp on Friday April 28, 2017 @02:54AM (#14217388)
It worked out alright for Algol 68RS, Mesa/Cedar, Modula-2+, Modula-3, Oberon, Oberon-2, Active Oberon, Component Pascal, Sing#, System C#.

Those systems failed market adoption mostly due to politics and company acquisitions than technical hurdles.

Re:Rust 1.17 by adrianN on Friday April 28, 2017 @05:46AM (#14218094)
Some applications are easier without a GC. Embedded work comes to mind. Realtime guarantees for systems with GC are also somewhat tricky (though not impossible to achieve).
Re:Rust 1.17 by pjmlp on Friday April 28, 2017 @08:21AM (#14218787)
True, but just because a systems language has a GC doesn't mean one has to use it everywhere, it is the only mechanism to allocate memory or that it has to run all the time.

Modula-3 is a good example of how to support all scenarios required by a systems programming language with GC, unfortunately Compaq buying DEC followed by HP buying Compaq, killed all the work the SRC group was doing.

For embedded work check the Oberon compilers sold by Astrobe for ARM Cortex-M3, Cortex-M4 and Cortex-M7, as well as, Xilinx FPGA Systems.

Re:Rust 1.17 by rurban on Friday April 28, 2017 @03:05AM (#14217441)
Baking unsafe memory languages with limited type systems and blocking libraries for the hard parts is neither a good idea for systems.
Re:Rust 1.17 by ryeguy on Thursday April 27, 2017 @10:36PM (#14216517)
Try these benchmarks instead: http://benchmarksgame.alioth.debian.org/u64q/rust.html

Rust should be beating the majority of those languages in well-implemented comparisons.

Re:Rust 1.17 by dom0 on Friday April 28, 2017 @04:27AM (#14217802)
> light GC ( like reference counting )

Refcounting is often one of the slower ways to implement a GC. It also has other issues, like long GC pauses when a large structure goes out of scope.

Re:Rust 1.17 by rurban on Friday April 28, 2017 @03:04AM (#14217430)
I hope you do realize that a good GC is usually faster then refcounting, and comparing it to slow GC's does not prove anything.

For fairness you need to compare Rust to D or Pony or SBCL, which are also close to C++ (even faster), plus added concurrency safety or memory safety, which can be circumvented in Rust.

Re:Rust 1.17 by adwn on Friday April 28, 2017 @03:34AM (#14217570)
> I hope you do realize that a good GC is usually faster then refcounting, and comparing it to slow GC's does not prove anything.

In idiomatic Rust code, you typically have very few reference increments/decrements, making it faster and more efficient than both, GC and traditional RC-based approaches.

The reasons for this are that objects are often allocated on the stack, passed by reference (a safe pointer), and directly integrated into a larger structure, requiring fewer heap allocations and very few – if any – refcounted objects. In Rust, unlike C or C++, you can do this safely and ergonomically because Rust enforces clear and well-defined ownership semantics.

[dead]
Re:Rust 1.17 by steveklabnik on Friday April 28, 2017 @07:28AM (#14218523)
You haven't actually demonstrated any problems, just repeated that they exist.

Unsubstantiated criticism usually gets downvoted on HN, Rust or not.

Re:Rust 1.17 by adwn on Friday April 28, 2017 @07:55AM (#14218670)
> I do know rust, their RC problems, their unsafe problems, their concurrency and locking problems and their type system problems.

Please elaborate. In particular, what RC and concurrency problems?

Re:Rust 1.17 by the_why_of_y on Friday April 28, 2017 @07:00PM (#14223863)