From c65089b528bd4f76ba14ad9f6e75306aa4ab9558 Mon Sep 17 00:00:00 2001 From: Ryan Scott Date: Tue, 16 Jul 2024 12:42:14 -0400 Subject: [PATCH] Cite Macaw paper and blog post in the README Fixes #343. Fixes #397. --- README.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/README.md b/README.md index 55a682d2..3a549c09 100644 --- a/README.md +++ b/README.md @@ -67,6 +67,22 @@ These Macaw core libraries depend on a number of different supporting libraries, * what4 -- Symbolic representation for the crucible backend * parameterized-utils -- utilities for working with parameterized types +## Documentation + +A set of high-level design documents can be found in the [`doc`](doc) +subdirectory. Documentation for individual API functions and data types can be +found in the Haddock comments throughout the code. + +We have also written some other resources about Macaw: + +* [Macaw: A Machine Code Toolbox for the Busy Binary + Analyst](http://www.arxiv.org/abs/2407.06375): an unpublished paper about + Macaw, as well as binary analysis tools built on top of Macaw. +* [Making a scalable, SMT-based machine code memory + model](https://galois.com/blog/2023/03/making-a-scalable-smt-based-machine-code-memory-model/): + a blog post about `macaw-symbolic`'s lazy memory model (implemented in + [`Data.Macaw.Symbolic.Memory.Lazy`](symbolic/src/Data/Macaw/Symbolic/Memory/Lazy.hs) + # Building ## Preparation