csmith
ouroboros-network
Our great sponsors
csmith | ouroboros-network | |
---|---|---|
7 | 8 | |
940 | 265 | |
2.1% | 1.5% | |
4.1 | 9.7 | |
3 months ago | 3 days ago | |
C++ | Haskell | |
GNU General Public License v3.0 or later | 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.
csmith
-
Perses: Syntax-Directed Program Reduction
Yes! Another well-known program reducer is C-Reduce [0]. When Csmith [1] started churning out very large programs that exhibited errors in C compilers, the compiler maintainers asked the researchers to please reduce the ~81KB files to a more manageable size so they could understand the errors better. C-Reduce was developed specifically to address that need.
[0] https://github.com/csmith-project/creduce
[1] https://github.com/csmith-project/csmith
- Csmith, a random generator of C programs
-
The only definitive way to establish that software is correct and bug-free is through mathematics, using the formal methods
Is CompCert actually safer in practice? One way to evaluate this is via fuzzing tools like CSmith. CSmith has a list of bugs they have found (hundreds total, in mainstream compilers like llvm and gcc). Here is a quote from the 2011 PLDI paper on CSmith:
- How SQLite Is Tested
-
How to generate random but valid source programs?
If you are actually just going to use C, the easiest way is to just use this existing tool that does exactly what you want and has been used to find many, many existing bugs in many compilers: https://embed.cs.utah.edu/csmith/
-
Finding Bugs in C and C++ Compilers using YARPGen
Here's a list of bugs found by a similar project, Csmith: https://github.com/csmith-project/csmith/blob/master/BUGS_REPORTED.TXT
ouroboros-network
-
We're looking for a senior software engineer to join our consensus team at IOG
I'm one of the consensus team members at IOG. We maintain and extend the consensus layer of the Cardano blockchain, which provides a rich set of challenges related to distributed computing, type level programming, networking, concurrency, among others.
-
How much will the 2022 scaling solutions actually increase the scaling ?
According to a document on pipelining I saw on Github they might be building a whole new Ouroboros protocol called Leios (https://github.com/input-output-hk/ouroboros-network/pull/3579/files) so there might be something we don't know yet
-
Open Source Projects written in Haskell
• cardano-node - top level integration code • ouroboros-network & ouroboros-consensus - network code & consensus (which integrates network, consensus and the ledger) • ledger - ledger(s) specifications and implementation • plutus - the smart contract language and related infrastructure
-
Compare RTT delays between stake pool nodes - how?
Check out cardano-ping.
- Today we did the upgrade to 1.26.1
-
How to generate random but valid source programs?
This is non trivial, you can check an example how we generate valid subset of Haskell to check that our implementation of orElse is corect: https://github.com/input-output-hk/ouroboros-network/blob/master/io-sim/test/Test/STM.hs
-
What do you guys think about Cardano?
So from what I gather the transaction fee is a fixed protocol parameter. I like how fees are distributed amongst the epoch, If I had to design a blockchain system I'd also have chosen this approach TBH. It addresses some of the issues and misaligned incentives if you only have to rely on fees for block rewards. However if the demand for transactions constantly outweighs the available space you get into other issues. I tried to find details on how Cardano handles transactions and manages its mempool. I believe somewhere here is the code? (https://github.com/input-output-hk/ouroboros-network/blob/master/ouroboros-consensus/src/Ouroboros/Consensus/Mempool/Impl.hs)
-
Thinking of swapping most of my altcoin for Cardano
Ouroboros(the consensus algorithm's formal specification): https://github.com/input-output-hk/ouroboros-network
What are some alternatives?
yarpgen - Yet Another Random Program Generator
daedalus - The open source cryptocurrency wallet for ada, built to grow with the community
hn-search - Hacker News Search
jormungandr - privacy voting blockchain node
perses - language-agnostic program reducer.
cardano-wallet - HTTP server & command-line for managing UTxOs and HD wallets in Cardano.
creduce - C-Reduce, a C and C++ program reducer
aur - A secure, multilingual package manager for Arch Linux and the AUR.
plutus - The Plutus language implementation and tools
cardano-base - Code used throughout the Cardano eco-system
cardano-ledger-specs - The ledger implementation and specifications of the Cardano blockchain. [Moved to: https://github.com/input-output-hk/cardano-ledger]
awesome-layer-2 - All the layer 2 projects