-
Notifications
You must be signed in to change notification settings - Fork 32
Ergonomics of String handling #26
Copy link
Copy link
Open
Labels
A-ergonomicsArea: Ease of solving CLI related problems (e.g. filesystem interactions)Area: Ease of solving CLI related problems (e.g. filesystem interactions)C-tracking-issueCategory: A tracking issue for an unstable featureCategory: A tracking issue for an unstable feature
Metadata
Metadata
Assignees
Labels
A-ergonomicsArea: Ease of solving CLI related problems (e.g. filesystem interactions)Area: Ease of solving CLI related problems (e.g. filesystem interactions)C-tracking-issueCategory: A tracking issue for an unstable featureCategory: A tracking issue for an unstable feature
From the survey, string ergonomics are huge. Many, many CLI applications deal heavily with strings. In Rust, strings can be...difficult.
Granted, (IMO) Rust handles them correctly, sometimes the correctness doesn't actually matter for a given problem domain and just adds unnecessary gyration.
For example, we have:
&)('static)strCow&)String&)OsStr&)OsStringIt's understanding it can be overwhelming. My personal opinion is we should first tackle/discuss the ergonomics of using
OsStr(ing)as it's heavily used on Linux (where paths may not contain valid UTF-8).IMO
OsStrshould have the same user experience as&str/String.We could also probably start by either listing known issues/inconsistencies or any current issue links/RFCs on the matter.