the_oxidation[0]: Intro
Hey, welcome!
In this series I will document the process of me, as a monkey brain who only uses managed memory languages, learning the Rust programming language.
Why are you doing this?
Well, I have wanted to build a JS minifier to beat everyone else’s for a very long time, and I finally decided that screw it, I’m gonna do it!
For performance reasons (what I plan to do is going to require stringifiying craptons of JS), I chose SWC to be my parser, AST, and emitter. Also, I’m familiar with it.
Tell me more about this project
So of course, if I’m going to write a series of blog posts about something, I’m going to need to tell you about what I’m actually making!
I am going to be making a minifier for JavaScript that can apply two main types of transformation: transforms that can always/heuristically be applied, as is the standard for current tools, and transforms that we try, see if it improves things, then if necessary bail out.
This will involve essentially having a great big pile of things to try, the proverbial “throw enough mud at the wall, some of it will stick”, and hopefully getting a small bundle at the end of it.
What sort of thing do you expect to cover?
I expect a lot of the posts here will talk about either something inherent to Rust, or more about how I solved a particular problem.
All of these will be about a problem I have solved or worked around, or something new that I learned incidentally related to Rust or this project.
I already actually have the first blog post lined up to write, about early lessons in ownership, and weaving my way around the borrow checker!
Coolio, but blog posts are inconvenient, I wanna binge read!
I’ll shove next and previous links at the bottom of each post in this series, hows about that ;)
Hopefully you find this series interesting, and I hope to see you back here soon!
— Yellowsink
Previous
Next