the-super-tiny-compiler
Gatsby
the-super-tiny-compiler | Gatsby | |
---|---|---|
19 | 357 | |
27,396 | 55,016 | |
- | 0.1% | |
0.0 | 9.3 | |
2 months ago | 5 days ago | |
JavaScript | JavaScript | |
Creative Commons Attribution 4.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
the-super-tiny-compiler
-
ESLint: under the hood
Now, those concepts are a whole entire world to explore, and this is out of the scope of this article. I suggest the reading of the Chapters 4, 5 and 6 of the book Crafting Interpreters by Robert Nystrom for a wider (but still practical) understanding of those subjects. Another practical great resource to look at is The SuperTiny Compiler. To explore them from a theorical point of view, you can find A LOT of resources from books or courses online.
-
Abstract Syntax Trees and Practical Applications in JavaScript
The super tiny compiler by Jamie
-
GCC uses GCC to compile itself
I am currently writing a much more intricate version of the Super Tiny Compiler (https://github.com/jamiebuilds/the-super-tiny-compiler) in Rust, only I plan on handling many basic operations, essentially a compiler for a MUCH simpler version of Go. Great project idea btw, for anyone who wants to explore compilers. But in doing so, have really found a new respect for just what is going on when you gcc -o garbageprogram mytrashcode.c
-
how would you make a programming language if you were a complete beginner?
Here, at least take this floatie: https://github.com/jamiebuilds/the-super-tiny-compiler
-
Any good resources for reading code?
Outside of this, I recently learned about The Super Tiny Compiler which was a project written to be read. Mind you, it has a vast amount of comments, which may be more of a leg-up than you're asking for.
-
Ask HN: Guidance on writing a source to source compiler (transpiler)
You could start here:
https://github.com/jamiebuilds/the-super-tiny-compiler
That converts from lisp-like to javascript. Really though this is a big field, and there are lots of resources out there.
To get started look at your input language; you'll need to lex and parse that. Then massage the parsed structure into the appropriate output.
You can see me convert brainfuck to C, or x86 assembly language here:
https://github.com/skx/bfcc
- The Super Tiny Compiler
Gatsby
-
Building static websites
The first time I started building static websites is when I discovered Gatsby. I built several projects using Gatsby and hosted it on Netlify free tier. It felt like a really robust architecture and I loved that it was free.
-
Gatsby tutorial: Build a static site with a headless CMS
A Gatsby site uses Gatsby, which leverages React and GraphQL to create fast and optimized web experiences. Gatsby is often used for building static websites, progressive web apps (PWAs), and even full-blown dynamic web applications.
-
Building a High-Performance Website with Next.js and WordPress
While Next.js is a powerful framework for building server-rendered React applications, it's not the only option for developers looking to create high-performance websites. One notable alternative is Gatsby, a static site generator that leverages React and GraphQL.
-
The Current State of React Server Components: A Guide for the Perplexed
The other piece of important information to acknowledge here is that when we say RSCs need a framework, “framework” effectively just means “Next.js.” There are some smaller frameworks (like Waku) that support RSCs. There are also some larger and more established frameworks (like Redwood) that have plans to support RSCs or (like Gatsby) only support RSCs in beta. We will likely see this change once we get React 19 and RSCs are part of the Stable version. However, for now, Next.js is currently the only framework recommended in the official React docs that supports server components.
-
A list of SaaS, PaaS and IaaS offerings that have free tiers of interest to devops and infradev
GatsbyjsCMS - Gatsby is the fast and flexible framework that makes building websites with any CMS, API, or database fun again. Build and deploy headless websites that drive more traffic, convert better, and earn more revenue!
- The gatsby build command will not complete or terminate
-
ReactJS Good Practices
GatsbyJS
-
Abstract Syntax Trees and Practical Applications in JavaScript
Babel plugins are everywhere. From being used to remove unwanted exports from files in Gatsby to being used to disallow users from doing re-exports in Nextjs.
-
How To Choose the Best Static Site Generator and Deploy it to Kinsta for Free
In terms of GitHub stars, SSGs like Next.js, Hugo, Gatsby, Docusaurus, Nuxt.js, and Jekyll top the list. Some popular SSGs even host conferences and workshops, providing resources and networking opportunities for those looking to explore more advanced topics in depth.
-
Finding the Best React CMS: A Comprehensive Guide
Flexibility : Developers have complete control over the frontend so they can use their preferred tools and frameworks like React, Next.js, Gatsby, or Remix.
What are some alternatives?
write-a-C-interpreter - Write a simple interpreter of C. Inspired by c4 and largely based on it.
Svelte - Cybernetically enhanced web apps
es6-cheatsheet - ES2015 [ES6] cheatsheet containing tips, tricks, best practices and code snippets
astro - The web framework for content-driven websites. ⭐️ Star to support our work!
minipack - 📦 A simplified example of a modern module bundler written in JavaScript
SvelteKit - web development, streamlined
flowy - The minimal javascript library to create flowcharts ✨
Express - Fast, unopinionated, minimalist web framework for node.
fslightbox - An easy to use vanilla JavaScript plug-in without production dependencies for displaying images, videos, or, through custom sources, anything you want in a clean overlying box.
eleventy 🕚⚡️ - A simpler site generator. Transforms a directory of templates (of varying types) into HTML.
raspberry-pi-os - Learning operating system development using Linux kernel and Raspberry Pi
Vue.js - This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core