abstreet
unsafe-code-guidelines
abstreet | unsafe-code-guidelines | |
---|---|---|
56 | 74 | |
7,308 | 640 | |
0.4% | 1.3% | |
8.9 | 6.9 | |
18 days ago | about 1 month ago | |
Rust | ||
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
abstreet
-
Show HN: I built a transit travel time map
Super awesome! I like how you just color roads to show time. When you calculate polygons to try and cover the whole area in some 5-10 minute bucket, you can wind up with all sorts of odd holes far away from roads. Keep it simple.
https://github.com/a-b-street/abstreet/pull/1075
- A/B Street: Transportation planning and traffic simulation for friendlier cities
- A/B Street
-
Egregoria is a city simulation with high granularity
A|B Street does some of that, but it is not a game: https://github.com/a-b-street/abstreet
-
Not a Surprise: 101 Freeway Widening Shows Negative Results
You can build it out in a cool simulator and show it off.
-
Bay Area drivers spend 97 hours a year in traffic. Why didn’t remote work end commute nightmares?
The tool you want exists, but you'll need to actually build the city in it. It's really an incredible program!
-
Ask HN: Who is hiring? (December 2022)
Active Travel England | Software Developers and Data Engineer | Full or Part Time | https://www.gov.uk/government/organisations/active-travel-en...
Active Travel England will be developing tools to support evidence-based investment and policies to support sustainable transport. We're hiring 3 roles at present (there will be more jobs in January): https://www.civilservicejobs.service.gov.uk/csr/index.cgi?SI...
We are already working with the transport simulation and scenario development tool A/B Street and the Low Traffic Neighbourhood design tool: https://a-b-street.github.io/docs/ and plan to create new web applications to transform active travel infrastructure design, monitoring and evaluation.
An exciting thing about these jobs from a software engineering perspective is that you will be starting with a relatively blank slate. In the UK we already have tools like https://bikedata.cyclestreets.net and https://www.pct.bike/ but need to go further than this. Long term, the 7 strong Data and Digital team that you will be part of will develop a comprehensive map based design support tool to provide data of the type in BikeData (and more datasets), drawing tools, and automated assessment of proposed interventions.
These opportunities will enable you to shape the future of tools for active travel investment and policy in England and, because the software develop as part of these roles will be open source, beyond.
These high profile jobs will have a large impact, see here for context: https://twitter.com/Chris_Boardman/status/159648662743800217...
- Offline public transport navigation tool for simulations
-
mutli Agent simulation
I don't know the topic well enough to be sure, but isn't this what you're looking for: https://github.com/a-b-street/abstreet
-
34 extremely good websites(to have fun) that most people probably don't know about - dancing robots you can fling, 180 websites in 180 days, hot or not for generative art, draw auroras
https://github.com/a-b-street/abstreet - project to plan, simulate, and communicate visions for making cities friendlier to people walking, biking, and taking public transit.
unsafe-code-guidelines
-
Passing nothing is surprisingly difficult
Useful context on the Rust side is this issue [1]. It sounds like some of the author's concerns are addressed already.
[1]: https://github.com/rust-lang/unsafe-code-guidelines/issues/4...
-
Blog Post: Non-Send Futures When?
Is this captured by one of the known soundness conflicts? If not then should consider adding it to the list.
- Are crates like vcell and volatile cell still unsound?
-
Question: Are there things for Unsafe Rust learn from Zig?
There are some competing proposals for different memory models. Stacked borrows is the current proposal, but there are more work in the approproate WG.
-
Let's thank who have helped us in the Rust Community together!
Thank you /u/RalfJung for bringing formal methods to Rust, both through models like Stacked Borrows, by developing miri, and by working on unsafe-code-guidelines which aims to specify exactly what is and isn't allowed in unsafe code (surprisingly, it's an open question as 2023!)
- Questions about ownership rule
-
Noob Here: Why doesn't this work?
You could imagine some way to make this safe for example automatically convert &'short &'long mut T to &'short &'short T, but it's non-trivial to prove they are safe at all, not to mention ensuring this is correctly implemented in the compiler. If you're interested there's also a discussion on whether the opposite (& & T to & &mut T) is sound here.
-
When Zig is safer and faster than (unsafe) Rust
Agreed! MIRI is so good, it still feels like magic to me. It also comforts me that the Rust team takes improving unsafe semantics seriously, with the past Unsafe Code Guidelines WG and today's operational semantics team (t-opsem).
-
Safety and Soundness in Rust
I think there are some aspects of this rule that are still undecided. See for example:
- https://github.com/rust-lang/unsafe-code-guidelines/issues/8...
- https://github.com/rust-lang/miri/issues/2732
-
I wanna be a crab.
C is much better specified than unsafe Rust. Some things are just not worked out yet in Rust. This may sometimes even bite very experienced devs, such as this issue with Box's aliasing semantics, which tripped up the author of left-right.
What are some alternatives?
prettymaps - A small set of Python functions to draw pretty maps from OpenStreetMap data. Based on osmnx, matplotlib and shapely libraries.
tokio - A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...
tilemaker - Make OpenStreetMap vector tiles without the stack
rust - Empowering everyone to build reliable and efficient software.
osm-renderer - OpenStreetMap raster tile renderer written in Rust
rfcs - RFCs for changes to Rust
grid2demand - A tool for generating zone-to-zone travel demand based on grid zones and gravity model
x11rb - X11 bindings for the rust programming language, similar to xcb being the X11 C bindings
awesome-vector-tiles - Awesome implementations of the Mapbox Vector Tile specification
bevy - A refreshingly simple data-driven game engine built in Rust
owid-grapher - A platform for creating interactive data visualizations
miri - An interpreter for Rust's mid-level intermediate representation