5 ms·
Hi, you can blame me for this. It's a Java compiler plugin[1], which is similar to an annotation processor, but can hook into the compiler at a much earlier sta
by mckinney 6y ago
Hi, you can blame me for this. It's a Java compiler plugin[1], which is similar to an annotation processor, but can hook into the compiler at a much earlier stage, which allows it to contribute to all phases of the compiler, including the Parser phase. The Manifold plugin takes full advantage of this, hence its ability to analyze comments, contribute to bytecode generation, etc.
[1] https://docs.oracle.com/javase/8/docs/jdk/api/javac/tree/com/sun/source/util/Plugin.html https://docs.oracle.com/javase/8/docs/jdk/api/javac/tree/com...
- eatonphil 6y agoSo you have a javascript frontend hooked into the java compiler? Or how does your javascript integration work?
- mckinney 6y agoAt compile-time manifold-js[1] parses JS and generates Java types (stubs), which forward execution to rhino at runtime. Basically, JS seamlessly mapped onto Java's type system. [1] https://github.com/manifold-systems/manifold/tree/master/manifold-deps-parent/manifold-js https://github.com/manifold-systems/manifold/tree/master/man...
- teslalang 6y agoAmazing! Reading the posted link this looks much bigger than embedding, which is crazy impressive btw. Do you anticipate building support for more resources? I notice you have GraphQL support... what about SQL?