Just played around with this, a wrapper to Clang's #cpp AST that makes it super easy to traverse.
You create a parser that can take in a list of headers/source files, and specify any defines, flags, or include directories you want. From there it gives you an AST that can be traversed to check for docstrings (`/// or /**`), class names, members, `public/private` keywords, `[[attribute]]` tags, base classes, if its a struct or a class, and any error messages from clang!
Been working on a really awesome #cpp library for creating cross platform apps using any windowing protocol you want (Win32, UWP, Cocoa, UIKit, XCB, XLib, Mir, Wayland, WebAssembly) for quickly getting apps off the ground:
Still a WIP but it's coming along really well, with sister libraries to help create apps using any graphics API, and cross window, cross graphics API demos working. <3
#GDC was insane! Good to be back. All sorts of talks on Vulkan, HDR, Real-Time Raytracing, roundtable discussions about VFX, sound programming, etc. :D
I love Visual Studio as much as the next guy for #cpp but when it comes to errors and warnings XCode has it beat.
Hopefully Microsoft will get the ball rolling with Visual Studio 2018 along with C++ modules. :D
Here's a blog post I wrote about shader languages and their differences. ;)
This week I've been reading Understanding Compression, an O'Reilly book about data compression. After looking at companies like https://binomial.info doing it and Google summer of code cases where PhD students improved download speeds for Google Play, it got really interesting.
How often do you think about compression, it could help your app out one way or another. ;)
Add on top of that Rust's first class unit testing, doc generation with markdown, and best of all: focus on safety and you've got a really stable server. :)
Been working on a web backend with #rust and Rocket.
Normally a Node.js + Express server has a 33 ms local latency and uses 660 mb of ram, so it was a really pleasant surprise to see the Rocket use only 2 mb of ram and have a 22 ms local latency.
Updated my site with some of the projects I've been working on:
- CodeVR for virtual reality programming
- Raw Graphics, a graphics twitch stream/podcast
- React Anime, a react animation library
- Realtime Celestial Rendering, a research paper.
join me in rejecting all technology. burn your computers. throw out your books. refridgerators? technology, get rid of em. furniture? that smells like technology. wheels? how dare you
Cargo-culting is fine; it's how we programmers get a lot of important work done. If everyone built their own framework, those frameworks would be much poorer for it.
But OTOH I'm tired of hearing 100 different teams all pretend that they independently arrived upon React as if it's some universal mathematical axiom you can derive from deductive reasoning. I wish we programmers had the self-awareness to realize when we're being influenced by the crowd, charismatic thoughtleaders, narratives, etc.
Graphics Software Engineer @ Marmoset.co. Writes about 🛆 Computer Graphics, 🎨 Art & 🎹🎸 Audio Design/Engineering.
The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!