advent_of_code VS misra-rust

Compare advent_of_code vs misra-rust and see what are their differences.

advent_of_code

This repository contains solutions to Advent of Code challenges (by joakim-strandberg)

misra-rust

An investigation into what adhering to each MISRA-C rule looks like in Rust. The intention is to decipher how much we "get for free" from the Rust compiler. (by PolySync)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
advent_of_code misra-rust
5 8
0 112
- 3.6%
0.0 0.0
over 1 year ago almost 3 years ago
Ada Rust
- MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

advent_of_code

Posts with mentions or reviews of advent_of_code. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-01-01.
  • It's a brand new year! January 2023 What Are You Working On?
    3 projects | /r/ada | 1 Jan 2023
    I've updated the README file of my github repository where I have put solutions to Advent of Code. The README file outlines my thoughts and considerations when writing the code which uses a minimal subset of the full Ada language, uses AdaControl to know the intended subset is used, how memory safety and resource management in general has been done when not taking advantage of SPARK. https://github.com/joakim-strandberg/advent_of_code
  • Outsider's Guide to Ada
    1 project | /r/ada | 8 Feb 2022
    I am aware that controlled types are associated with performance penalty although I haven't fully understood why. When I write Ada code I try to avoid using them although sometimes there seem to be no workaround like for example when using Gautier's multi precision integer implementation when doing Advent of Code 2021 (https://github.com/joakim-strandberg/advent_of_code, the "Big_Int_Holder" package in advent_of_code_2021.adb). Return value optimization (RVO) does make me think of extended return and limited types in Ada 2005, although as was discussed in the video that move semantics is more than that. Thanks for bringing up the subject!
  • AdaCore and Ferrous Systems Joining Forces to Support Rust
    14 projects | news.ycombinator.com | 2 Feb 2022
    It's kind of the opposite for me. It takes much less time to understand what Ada-written code is doing compared to any of the C-type languages, or even Rust. It is very plainly written. Verbose, yes, but much more plainly written.

    Just take a look at this, and tell me it's not legible: https://github.com/joakim-strandberg/advent_of_code/blob/mas...

  • -🎄- 2021 Day 2 Solutions -🎄-
    250 projects | /r/adventofcode | 1 Dec 2021
    Ada95, part one (full code at https://github.com/joakim-strandberg/advent_of_code/):
  • Ada and Advent of Code 2021
    12 projects | /r/ada | 26 Nov 2021
    Ouch, link doesn't work, due to escape characters. The proper link: https://github.com/joakim-strandberg/advent_of_code

misra-rust

Posts with mentions or reviews of misra-rust. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-28.
  • United States White House Report on Memory Safe Programming [pdf]
    5 projects | news.ycombinator.com | 28 Feb 2024
    MISRA and Ferrocene are not really related.

    MISRA is, as you say, a set of rules for writing C code, that restrict what you can do.

    Ferrocene is a qualified compiler. You write any normal Rust code you want: it's still the upstream Rust compiler. There are no restrictions.

    Incidentally, someone has compared what MISRA does to what Rust does: https://github.com/PolySync/misra-rust/blob/master/MISRA-Rul...

    Given that they can't repeat the MISRA stuff there, it's a bit disjoined, but it sure is interesting!

  • Misra C++:2023 Published
    4 projects | news.ycombinator.com | 17 Dec 2023
    A fun github repo: "what would MISRA look like applied to Rust" https://github.com/PolySync/misra-rust/blob/master/MISRA-Rul...

    (They're comparing with the C version, not the C++ version...)

  • Memory Safe Languages in Android 13
    7 projects | news.ycombinator.com | 1 Dec 2022
  • Ferrocene: Rust toolchain to safety-critical environments
    2 projects | news.ycombinator.com | 26 Jul 2022
    > There are huge swathes of MISRA which forbid things which not only aren't possible in Rust or SPARK

    I can't vouch for its accuracy, but https://github.com/PolySync/misra-rust

  • High Assurance Rust: Developing Secure and Robust Software
    4 projects | news.ycombinator.com | 28 Mar 2022
    When it comes to MISRA C, it is interesting to note how many (a majority) of its rules do not apply or have native enforcement[1].

    You might have also seen the AUTOSTAR Rust in Automotive Working Group announcement recently[2].

    [1]: https://github.com/PolySync/misra-rust/blob/master/MISRA-Rul...

    [2]: for some reason the announcement was removed from the "News and events" site, https://webcache.googleusercontent.com/search?q=cache%3Ahttp... but it is still available as a PDF https://www.autosar.org/fileadmin/user_upload/20220308_RustW...

  • AUTOSAR announces new Working Group for Programming Language Rust in Automotive Software context
    1 project | /r/embedded | 15 Mar 2022
    There's actually already a comparison: https://github.com/PolySync/misra-rust/blob/master/MISRA-Rules.md
  • AdaCore and Ferrous Systems Joining Forces to Support Rust
    14 projects | news.ycombinator.com | 2 Feb 2022
    Rust makes quite a few things more rigorous (e.g. pairing allocations with deallocations and reference validity). It basically fulfills the job of a static analyzer baked into the language.

    It's also a vastly more analyzable language (in that its syntax is reasonably unambiguous and there's no dynamic runtime in play) and it can be integrated well.

    Toolchain quality (error reporting, built in testing, awareness of primitives like "libraries", etc.) is also a huge strong point.

    We're reasonably confident that we can use safe Rust as is, with strong guidance on how to do unsafe Rust.

    For a tangible investigation of that space, PolySync has a project that has a look at MISRA rules from a Rust perspective. https://github.com/PolySync/misra-rust/blob/master/MISRA-Rul...

    Ada is a good example here: the language has not evolved something like MISRA-C (it has evolved SPARK for formal verification, but I see that differently).

  • Resources for learning C/C++ coming from a Rust background
    1 project | /r/rust | 19 Jan 2022

What are some alternatives?

When comparing advent_of_code and misra-rust you can also consider the following projects:

aoc-ada-2021 - Advent of Code 2021 in Ada

Welcome - Welcome to AeroRust- a Rust 🦀 in Aerospace 🚀 community & working group

advent-of-code - My Advent of Code solutions through the years - mostly JS

high-assurance-rust - A free book about developing secure and robust systems software.

AdventOfCode - My solutions to Advent of Code

creusot - Creusot helps you prove your code is correct in an automated fashion. [Moved to: https://github.com/creusot-rs/creusot]

adventOfCode - https://adventofcode.com/

rubble - (going to be a) BLE stack for embedded Rust

aoc21

rust-verification-tools - RVT is a collection of tools/libraries to support both static and dynamic verification of Rust programs.

scratch-www - Standalone web client for Scratch

wayland-ada - Ada 2012 bindings for Wayland