ocamlformat
bap
Our great sponsors
ocamlformat | bap | |
---|---|---|
2 | 3 | |
598 | 1,981 | |
1.3% | 1.8% | |
8.8 | 4.6 | |
10 days ago | 5 days ago | |
OCaml | OCaml | |
MIT License | MIT License |
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.
ocamlformat
-
Topiary: A code formatting engine leveraging Tree-sitter
It's ironic that just as the excellent https://github.com/ocaml-ppx/ocamlformat is seemingly closing in on 1.0 after ~4 years of development, here comes the implication that it's not good enough.
-
Is there any way to format mll/mly files?
Ocamlformat does not - issue has been open since 2019
bap
-
Any standard algorithms for parsing (disassembling) machine code?
BAP (https://github.com/binaryanalysisplatform/bap), angr (https://angr.io/) and others already do what you're asking for as more purpose-built solutions for dynamic analysis. Angr specifically in python.
- You need to stop idolizing programming languages.
-
Starting ocaml
I find this pretty good https://www.cs.cornell.edu/courses/cs3110/2019sp/textbook/intro/ocaml.html. Fun projects include compilers (pattern matching and static types are why Ocaml is usually selected), binary analysis stuff https://github.com/BinaryAnalysisPlatform/bap, stuff that requires async so you can try out nomadic async stuff, or really anything you desire.
What are some alternatives?
reason - Simple, fast & type safe code that leverages the JavaScript & OCaml ecosystems
VMProtect-devirtualization - Playing with the VMProtect software protection. Automatic deobfuscation of pure functions using symbolic execution and LLVM.
mirage - MirageOS is a library operating system that constructs unikernels
pyt - A Static Analysis Tool for Detecting Security Vulnerabilities in Python Web Applications
merlin - Context sensitive completion for OCaml in Vim and Emacs
angr - A powerful and user-friendly binary analysis platform!
google-drive-ocamlfuse - FUSE filesystem over Google Drive
klee - KLEE Symbolic Execution Engine
ocaml - The core OCaml system: compilers, runtime system, base libraries
MobileApp-Pentest-Cheatsheet - The Mobile App Pentest cheat sheet was created to provide concise collection of high value information on specific mobile application penetration testing topics.
pyre-check - Performant type-checking for python.
bolt - Bolt is a language with in-built data-race freedom!