CommunityNews

CommunityNews

The Usability of Advanced Type Systems: Rust as a Case Study

The Usability of Advanced Type Systems: Rust as a Case Study.
Advanced type systems that enforce various correctness and safety
guarantees–such as linear and ownership types–have a long history in the
Programming Languages research community. Despite this history, a
human-centered evaluation of these type systems and their usability was all but
absent, with empirical evaluations limited to testing their expressiveness in
programs written by experts, i.e. the creators of the type system.
In the past few years, this has begun to change with the adoption of a
version of affine types and ownership in the popular Rust programming language.
With the increase in Rust’s popularity, various studies have begun empirically
evaluating the usability of Rust’s Ownership and Lifetime rules, providing a
breadth of qualitative and quantitative information on the usability of such
type systems. They found that despite Rust’s general success in achieving its
promise of safety and performance, these rules come with a steep learning curve
and have been repeatedly cited as a barrier to adopting Rust.
In this report, I provide a brief history of linear types and region-based
memory management, which directly inspired Rust’s type system. I then introduce
Rust’s Ownership and Lifetime rules, and present the state-of-the-art in
academic research into their usability. I discuss both theoretical arguments
and empirical evidence for why these rules are difficult to learn and apply,
and survey existing work on addressing some of these difficulties. I also draw
from broader works in the HCI and CS Education communities to recommend future
work in this area.

Read in full here:

This thread was posted by one of our members via one of our news source trackers.

0 452 0

Where Next?

Popular General Dev topics Top

First poster: AstonJ
https://permission.site/ This thread was posted by one of our members via one of our news source trackers.
22 1327 8
New
First poster: bot
Neovim nightly, v0.5.0 and v0.4.4 has been released. Link: Release Nvim development (prerelease) build · neovim/neovim · GitHub Link:...
0 1185 0
New
New
First poster: bot
Large Language Models like ChatGPT say The Darnedest Things. The Errors They MakeWhy We Need to Document Them, and What We Have Decided ...
0 2920 0
New
First poster: bot
Rewrite it in Rust by ridiculousfish · Pull Request #9512 · fish-shell/fish-shell. (Sorry for the meme; also this is obligatory.) I thi...
0 1076 0
New
First poster: bot
Hector Martin (@marcan@treehouse.systems). Attached: 1 image For those wondering why the hell we need all this safety system stuff for...
0 975 0
New
First poster: gulshan212
Why Python keeps growing, explained | The GitHub Blog. A deep dive into why more people are using Python than ever, its key use cases, a...
9 974 9
New
First poster: bot
zig/http.zig at 7cf2cbb33ef34c1d211135f56d30fe23b6cacd42 · ziglang/zig. General-purpose programming language and toolchain for maintaini...
0 2781 0
New
First poster: fullstackplus
Why Python is terrible… Nice language, but unsuitable for most professional purposes
8 824 6
New
First poster: chris.johan
Skype’s days appear to be numbered, as a hidden string in the latest Skype for Windows preview suggests Microsoft will shutter the servic...
3 217 2
New

Other popular topics Top

Devtalk
Reading something? Working on something? Planning something? Changing jobs even!? If you’re up for sharing, please let us know what you’...
1033 17470 383
New
AstonJ
If it’s a mechanical keyboard, which switches do you have? Would you recommend it? Why? What will your next keyboard be? Pics always w...
144 8502 50
New
dasdom
No chair. I have a standing desk. This post was split into a dedicated thread from our thread about chairs :slight_smile:
177 8632 77
New
Margaret
Hello content creators! Happy new year. What tech topics do you think will be the focus of 2021? My vote for one topic is ethics in tech...
110 3900 43
New
AstonJ
Saw this on TikTok of all places! :lol: Anyone heard of them before? Lite:
13 3957 4
New
AstonJ
Biggest jackpot ever apparently! :upside_down_face: I don’t (usually) gamble/play the lottery, but working on a program to predict the...
19 3178 10
New
AstonJ
Was just curious to see if any were around, found this one: I got 51/100: Not sure if it was meant to buy I am sure at times the b...
4 3745 1
New
PragmaticBookshelf
Author Spotlight: Peter Ullrich @PJUllrich Data is at the core of every business, but it is useless if nobody can access and analyze ...
72 3959 21
New
CommunityNews
Will Swifties’ war on AI fakes spark a deepfake porn reckoning?
0 5956 0
New
CommunityNews
A Brief Review of the Minisforum V3 AMD Tablet. Update: I have created an awesome-minisforum-v3 GitHub repository to list information fo...
0 1782 0
New