3 ms·
I work on Semgrep; there are a bunch of examples at https://semgrep.live https://semgrep.live if you're curious about what the syntax looks like. For context,
by ievans 6y ago
I work on Semgrep; there are a bunch of examples at https://semgrep.live https://semgrep.live if you're curious about what the syntax looks like.
For context, Semgrep started as a Facebook open-source project inspired from a Inria project named Coccinelle, which has has made a couple thousand or so automatic patches to the Linux kernel over the years using a semantic patch language (http://coccinelle.lip6.fr/sp.php http://coccinelle.lip6.fr/sp.php)
- ipsum2 6y ago> Semgrep started as a Facebook open-source project Which project was this? I haven't heard of it before.
- ievans 6y agohttps://github.com/facebookarchive/pfff https://github.com/facebookarchive/pfff where it was named “sgrep”. pfff is maintained by @aryx who was the original author and is a Facebook alum, see https://github.com/returntocorp/pfff https://github.com/returntocorp/pfff for the official fork
- danpozmanter 6y agoImpressive work! Are there any plans to include C# or F#?
- carlmr 6y agoAlso C++ would be very nice.
- ievans 6y agoC# is high on the list, F# isn't a priority at the moment though. Behind the scenes, we've recently changed to use tree-sitter as the parser library; if there is a good F# tree-sitter library integration becomes quite easy. I don't see one at https://tree-sitter.github.io/tree-sitter/ https://tree-sitter.github.io/tree-sitter/ but perhaps there's one maintained elsewhere.