On 31.10.2012 23:39, Joshua Cranmer wrote:
On 10/31/2012 2:23 PM, David Rajchenbach-Teller wrote:
Wouldn't it be possible to rewrite dehydra as an API on top of js-ctypes
bindings?

Dehydra gets called from gcc, so we'd need to set up the JS engine and
run it ourselves--js-ctypes can't help with that (and that piece has a
not-insignificant amount of churn!). Getting a JSObject wrapper for a
native C type isn't possible either, so there's no place to start
hooking things up with js-ctypes.

BTW, Just trying the new Lua/LuaJIT plugin, everything goes smoothly for C with 4.7.2 so far.

A little advertisement of the LuaJIT :-):
 * libluajit.so (LuaJIT 2.0 RC1) is 442K on my x86_64 machine
* LuaJIT can load and call trough its unique FFI mechanism any other .so (and the visible GCC functions from the process). E.g. for instance, with a few Lua lines (without any C compilation) a plugin script can start to stream the msgpack encoded GCC tree over a ZeroMQ PUB socket during GCC compilation. LuaJIT FFI generates machine code for the C calls (unlike other ffi mechanisms)
 * LuaJIT usually generates faster machine code than V8
* Lua as language can be seen as simplified JS but with coroutines, iterators and metamethods (analogs for Python protocol's __getitem__, __call__, etc) * Lua has its LPEG - beautiful and simple PEG VM based parsing framework (recursive descending, with option for incremental/agile parsing, written in C by Roberto Ierusalimschy itself, but recently ported to "pure" LuaJIT FFI too), which is important for the comments and other things that Clang parses/keeps already, but GCC not yet.

Kind Regards,
Alek

_______________________________________________
dev-static-analysis mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-static-analysis

Reply via email to