The best Hacker News stories from Show from the past day

Go back

Latest posts:

Show HN: uWrap.js – A faster and more accurate text wrapping util in < 2KB

Show HN: uWrap.js – A faster and more accurate text wrapping util in < 2KB

Show HN: uWrap.js – A faster and more accurate text wrapping util in < 2KB

Show HN: Offline JavaScript PubSub between browser tabs

Show HN: Zxc – Rust TLS proxy with tmux and Vim as UI, BurpSuite alternative

Ditch Burp Suite’s bloat for zxc, a Rust-built, terminal-based proxy that uses tmux and Vim to intercept HTTP/S and WebSocket traffic. It captures requests for debugging, security testing, or tweaking—fast and lean.<p># Key Features - Disk Wizardry: Stashes massive datasets on disk-100k+ entries without breaking a sweat.<p>- Addons: Boost your workflow with default support for ffuf and sqlmap, or craft your own addons for extra fun.<p>- Buffer Tweaks: Edit variables in a popup (e.g., b:host, b:scheme) in Interceptor/Repeater to twist requests.<p>- Config Control: TOML files for global ($HOME/.config/zxc/config.toml) or per-session tweaks.<p>- Content Filtering: Skip requests based on the request Content-Type header.<p>- Domain Filtering: selectively include or exclude specific domains, offering granular control over which traffic is proxied or relayed, with support for wildcards like *.example.com<p>- Edit Config on the Fly: Tweak session settings live from History in a popup-changes hit instantly or refresh manually if edited outside.<p>- Encoding Tricks: Base64 or URL encode/decode in Visual mode-sneaky.<p>- Extended Attributes: Supercharge your workflow with `.req` files automatically tagged with critical metadata (e.g., user.host, user.http) - break free from the sandbox and unlock powerful integration with external tools like scripts or analyzers.<p>- Extension Filtering: Skip requests based on the requested contents extension `.mp3`, `.mp4` etc.<p>- History Display Filters: Tweak History logs by host, URI, or status code with Vim regex flair.<p>- History Window: View and filter all traffic in real-time.<p>- Interception Queue: Manage pending requests and responses in real-time—view the queue with scheme and host details, then forward, drop, or tweak them as they pile up in the Interceptor window.<p>- Malformed Requests: Custom HTTP/1.1 parser for sending quirky, security-testing requests.<p>- Repeater Window: Resend and tweak HTTP or WebSocket requests with ease<p>- Request Sharing: Share requests freely between windows for seamless tweaking and testing.<p>- Search Superpowers: Search requests or responses and add to Vim’s quickfix/location lists.<p>- Session Management: Create named sessions and attach to older sessions to resume work seamlessly.<p>- Traffic Interception: Edit requests and responses live in Vim.<p>- WebSocket History: A clear, organized history view of all WebSocket traffic with `.whis` files for a full overview, or dive into single-session details with `.wsess` files.<p>- WebSocket: Proxy and replay WebSocket traffic.<p>For complete list of features and screenshots refer the repo, <a href="https://github.com/hail-hydrant/zxc" rel="nofollow">https://github.com/hail-hydrant/zxc</a> .

Show HN: Monkeys.zip – 3000 Monkeys on Typewriters

Hey HN! I posted this on April 1st when it launched, and though it didn't get traction here, it was a minor hit on reddit! Now that we've got a few thousand monkeys under our belt, wanted to give it another shot here!<p>Happy to talk about the technical details of running the site - using supabase/postgres and constantly putting out fires from the traffic.

Show HN: Monkeys.zip – 3000 Monkeys on Typewriters

Hey HN! I posted this on April 1st when it launched, and though it didn't get traction here, it was a minor hit on reddit! Now that we've got a few thousand monkeys under our belt, wanted to give it another shot here!<p>Happy to talk about the technical details of running the site - using supabase/postgres and constantly putting out fires from the traffic.

Show HN: Monkeys.zip – 3000 Monkeys on Typewriters

Hey HN! I posted this on April 1st when it launched, and though it didn't get traction here, it was a minor hit on reddit! Now that we've got a few thousand monkeys under our belt, wanted to give it another shot here!<p>Happy to talk about the technical details of running the site - using supabase/postgres and constantly putting out fires from the traffic.

Show HN: GitMCP is an automatic MCP server for every GitHub repo

Show HN: GitMCP is an automatic MCP server for every GitHub repo

Show HN: GitMCP is an automatic MCP server for every GitHub repo

Show HN: GitMCP is an automatic MCP server for every GitHub repo

Show HN: Hatchet v1 – A task orchestration platform built on Postgres

Hey HN - this is Alexander from Hatchet. We’re building an open-source platform for managing background tasks, using Postgres as the underlying database.<p>Just over a year ago, we launched Hatchet as a distributed task queue built on top of Postgres with a 100% MIT license (<a href="https://news.ycombinator.com/item?id=39643136">https://news.ycombinator.com/item?id=39643136</a>). The feedback and response we got from the HN community was overwhelming. In the first month after launching, we processed about 20k tasks on the platform — today, we’re processing over 20k tasks per minute (>1 billion per month).<p>Scaling up this quickly was difficult — every task in Hatchet corresponds to at minimum 5 Postgres transactions and we would see bursts on Hatchet Cloud instances to over 5k tasks/second, which corresponds to roughly 25k transactions/second. As it turns out, a simple Postgres queue utilizing FOR UPDATE SKIP LOCKED doesn’t cut it at this scale. After provisioning the largest instance type that CloudSQL offers, we even discussed potentially moving some load off of Postgres in favor of something trendy like Clickhouse + Kafka.<p>But we doubled down on Postgres, and spent about 6 months learning how to operate Postgres databases at scale and reading the Postgres manual and several other resources [0] during commutes and at night. We stuck with Postgres for two reasons:<p>1. We wanted to make Hatchet as portable and easy to administer as possible, and felt that implementing our own storage engine specifically on Hatchet Cloud would be disingenuous at best, and in the worst case, would take our focus away from the open source community.<p>2. More importantly, Postgres is general-purpose, which is what makes it both great but hard to scale for some types of workloads. This is also what allows us to offer a general-purpose orchestration platform — we heavily utilize Postgres features like transactions, SKIP LOCKED, recursive queries, triggers, COPY FROM, and much more.<p>Which brings us to today. We’re announcing a full rewrite of the Hatchet engine — still built on Postgres — together with our task orchestration layer which is built on top of our underlying queue. To be more specific, we’re launching:<p>1. DAG-based workflows that support a much wider array of conditions, including sleep conditions, event-based triggering, and conditional execution based on parent output data [1].<p>2. Durable execution — durable execution refers to a function’s ability to recover from failure by caching intermediate results and automatically replaying them on a retry. We call a function with this ability a durable task. We also support durable sleep and durable events, which you can read more about here [2]<p>3. Queue features such as key-based concurrency queues (for implementing fair queueing), rate limiting, sticky assignment, and worker affinity.<p>4. Improved performance across every dimension we’ve tested, which we attribute to six improvements to the Hatchet architecture: range-based partitioning of time series tables, hash-based partitioning of task events (for updating task statuses), separating our monitoring tables from our queue, buffered reads and writes, switching all high-volume tables to use identity columns, and aggressive use of Postgres triggers.<p>We've also removed RabbitMQ as a required dependency for self-hosting.<p>We'd greatly appreciate any feedback you have and hope you get the chance to try out Hatchet.<p>[0] <a href="https://www.postgresql.org/docs/" rel="nofollow">https://www.postgresql.org/docs/</a><p>[1] <a href="https://docs.hatchet.run/home/conditional-workflows">https://docs.hatchet.run/home/conditional-workflows</a><p>[2] <a href="https://docs.hatchet.run/home/durable-execution">https://docs.hatchet.run/home/durable-execution</a>

Show HN: Hatchet v1 – A task orchestration platform built on Postgres

Hey HN - this is Alexander from Hatchet. We’re building an open-source platform for managing background tasks, using Postgres as the underlying database.<p>Just over a year ago, we launched Hatchet as a distributed task queue built on top of Postgres with a 100% MIT license (<a href="https://news.ycombinator.com/item?id=39643136">https://news.ycombinator.com/item?id=39643136</a>). The feedback and response we got from the HN community was overwhelming. In the first month after launching, we processed about 20k tasks on the platform — today, we’re processing over 20k tasks per minute (>1 billion per month).<p>Scaling up this quickly was difficult — every task in Hatchet corresponds to at minimum 5 Postgres transactions and we would see bursts on Hatchet Cloud instances to over 5k tasks/second, which corresponds to roughly 25k transactions/second. As it turns out, a simple Postgres queue utilizing FOR UPDATE SKIP LOCKED doesn’t cut it at this scale. After provisioning the largest instance type that CloudSQL offers, we even discussed potentially moving some load off of Postgres in favor of something trendy like Clickhouse + Kafka.<p>But we doubled down on Postgres, and spent about 6 months learning how to operate Postgres databases at scale and reading the Postgres manual and several other resources [0] during commutes and at night. We stuck with Postgres for two reasons:<p>1. We wanted to make Hatchet as portable and easy to administer as possible, and felt that implementing our own storage engine specifically on Hatchet Cloud would be disingenuous at best, and in the worst case, would take our focus away from the open source community.<p>2. More importantly, Postgres is general-purpose, which is what makes it both great but hard to scale for some types of workloads. This is also what allows us to offer a general-purpose orchestration platform — we heavily utilize Postgres features like transactions, SKIP LOCKED, recursive queries, triggers, COPY FROM, and much more.<p>Which brings us to today. We’re announcing a full rewrite of the Hatchet engine — still built on Postgres — together with our task orchestration layer which is built on top of our underlying queue. To be more specific, we’re launching:<p>1. DAG-based workflows that support a much wider array of conditions, including sleep conditions, event-based triggering, and conditional execution based on parent output data [1].<p>2. Durable execution — durable execution refers to a function’s ability to recover from failure by caching intermediate results and automatically replaying them on a retry. We call a function with this ability a durable task. We also support durable sleep and durable events, which you can read more about here [2]<p>3. Queue features such as key-based concurrency queues (for implementing fair queueing), rate limiting, sticky assignment, and worker affinity.<p>4. Improved performance across every dimension we’ve tested, which we attribute to six improvements to the Hatchet architecture: range-based partitioning of time series tables, hash-based partitioning of task events (for updating task statuses), separating our monitoring tables from our queue, buffered reads and writes, switching all high-volume tables to use identity columns, and aggressive use of Postgres triggers.<p>We've also removed RabbitMQ as a required dependency for self-hosting.<p>We'd greatly appreciate any feedback you have and hope you get the chance to try out Hatchet.<p>[0] <a href="https://www.postgresql.org/docs/" rel="nofollow">https://www.postgresql.org/docs/</a><p>[1] <a href="https://docs.hatchet.run/home/conditional-workflows">https://docs.hatchet.run/home/conditional-workflows</a><p>[2] <a href="https://docs.hatchet.run/home/durable-execution">https://docs.hatchet.run/home/durable-execution</a>

Show HN: Hatchet v1 – A task orchestration platform built on Postgres

Hey HN - this is Alexander from Hatchet. We’re building an open-source platform for managing background tasks, using Postgres as the underlying database.<p>Just over a year ago, we launched Hatchet as a distributed task queue built on top of Postgres with a 100% MIT license (<a href="https://news.ycombinator.com/item?id=39643136">https://news.ycombinator.com/item?id=39643136</a>). The feedback and response we got from the HN community was overwhelming. In the first month after launching, we processed about 20k tasks on the platform — today, we’re processing over 20k tasks per minute (>1 billion per month).<p>Scaling up this quickly was difficult — every task in Hatchet corresponds to at minimum 5 Postgres transactions and we would see bursts on Hatchet Cloud instances to over 5k tasks/second, which corresponds to roughly 25k transactions/second. As it turns out, a simple Postgres queue utilizing FOR UPDATE SKIP LOCKED doesn’t cut it at this scale. After provisioning the largest instance type that CloudSQL offers, we even discussed potentially moving some load off of Postgres in favor of something trendy like Clickhouse + Kafka.<p>But we doubled down on Postgres, and spent about 6 months learning how to operate Postgres databases at scale and reading the Postgres manual and several other resources [0] during commutes and at night. We stuck with Postgres for two reasons:<p>1. We wanted to make Hatchet as portable and easy to administer as possible, and felt that implementing our own storage engine specifically on Hatchet Cloud would be disingenuous at best, and in the worst case, would take our focus away from the open source community.<p>2. More importantly, Postgres is general-purpose, which is what makes it both great but hard to scale for some types of workloads. This is also what allows us to offer a general-purpose orchestration platform — we heavily utilize Postgres features like transactions, SKIP LOCKED, recursive queries, triggers, COPY FROM, and much more.<p>Which brings us to today. We’re announcing a full rewrite of the Hatchet engine — still built on Postgres — together with our task orchestration layer which is built on top of our underlying queue. To be more specific, we’re launching:<p>1. DAG-based workflows that support a much wider array of conditions, including sleep conditions, event-based triggering, and conditional execution based on parent output data [1].<p>2. Durable execution — durable execution refers to a function’s ability to recover from failure by caching intermediate results and automatically replaying them on a retry. We call a function with this ability a durable task. We also support durable sleep and durable events, which you can read more about here [2]<p>3. Queue features such as key-based concurrency queues (for implementing fair queueing), rate limiting, sticky assignment, and worker affinity.<p>4. Improved performance across every dimension we’ve tested, which we attribute to six improvements to the Hatchet architecture: range-based partitioning of time series tables, hash-based partitioning of task events (for updating task statuses), separating our monitoring tables from our queue, buffered reads and writes, switching all high-volume tables to use identity columns, and aggressive use of Postgres triggers.<p>We've also removed RabbitMQ as a required dependency for self-hosting.<p>We'd greatly appreciate any feedback you have and hope you get the chance to try out Hatchet.<p>[0] <a href="https://www.postgresql.org/docs/" rel="nofollow">https://www.postgresql.org/docs/</a><p>[1] <a href="https://docs.hatchet.run/home/conditional-workflows">https://docs.hatchet.run/home/conditional-workflows</a><p>[2] <a href="https://docs.hatchet.run/home/durable-execution">https://docs.hatchet.run/home/durable-execution</a>

Show HN: Hatchet v1 – A task orchestration platform built on Postgres

Hey HN - this is Alexander from Hatchet. We’re building an open-source platform for managing background tasks, using Postgres as the underlying database.<p>Just over a year ago, we launched Hatchet as a distributed task queue built on top of Postgres with a 100% MIT license (<a href="https://news.ycombinator.com/item?id=39643136">https://news.ycombinator.com/item?id=39643136</a>). The feedback and response we got from the HN community was overwhelming. In the first month after launching, we processed about 20k tasks on the platform — today, we’re processing over 20k tasks per minute (>1 billion per month).<p>Scaling up this quickly was difficult — every task in Hatchet corresponds to at minimum 5 Postgres transactions and we would see bursts on Hatchet Cloud instances to over 5k tasks/second, which corresponds to roughly 25k transactions/second. As it turns out, a simple Postgres queue utilizing FOR UPDATE SKIP LOCKED doesn’t cut it at this scale. After provisioning the largest instance type that CloudSQL offers, we even discussed potentially moving some load off of Postgres in favor of something trendy like Clickhouse + Kafka.<p>But we doubled down on Postgres, and spent about 6 months learning how to operate Postgres databases at scale and reading the Postgres manual and several other resources [0] during commutes and at night. We stuck with Postgres for two reasons:<p>1. We wanted to make Hatchet as portable and easy to administer as possible, and felt that implementing our own storage engine specifically on Hatchet Cloud would be disingenuous at best, and in the worst case, would take our focus away from the open source community.<p>2. More importantly, Postgres is general-purpose, which is what makes it both great but hard to scale for some types of workloads. This is also what allows us to offer a general-purpose orchestration platform — we heavily utilize Postgres features like transactions, SKIP LOCKED, recursive queries, triggers, COPY FROM, and much more.<p>Which brings us to today. We’re announcing a full rewrite of the Hatchet engine — still built on Postgres — together with our task orchestration layer which is built on top of our underlying queue. To be more specific, we’re launching:<p>1. DAG-based workflows that support a much wider array of conditions, including sleep conditions, event-based triggering, and conditional execution based on parent output data [1].<p>2. Durable execution — durable execution refers to a function’s ability to recover from failure by caching intermediate results and automatically replaying them on a retry. We call a function with this ability a durable task. We also support durable sleep and durable events, which you can read more about here [2]<p>3. Queue features such as key-based concurrency queues (for implementing fair queueing), rate limiting, sticky assignment, and worker affinity.<p>4. Improved performance across every dimension we’ve tested, which we attribute to six improvements to the Hatchet architecture: range-based partitioning of time series tables, hash-based partitioning of task events (for updating task statuses), separating our monitoring tables from our queue, buffered reads and writes, switching all high-volume tables to use identity columns, and aggressive use of Postgres triggers.<p>We've also removed RabbitMQ as a required dependency for self-hosting.<p>We'd greatly appreciate any feedback you have and hope you get the chance to try out Hatchet.<p>[0] <a href="https://www.postgresql.org/docs/" rel="nofollow">https://www.postgresql.org/docs/</a><p>[1] <a href="https://docs.hatchet.run/home/conditional-workflows">https://docs.hatchet.run/home/conditional-workflows</a><p>[2] <a href="https://docs.hatchet.run/home/durable-execution">https://docs.hatchet.run/home/durable-execution</a>

Show HN: Hatchet v1 – A task orchestration platform built on Postgres

Hey HN - this is Alexander from Hatchet. We’re building an open-source platform for managing background tasks, using Postgres as the underlying database.<p>Just over a year ago, we launched Hatchet as a distributed task queue built on top of Postgres with a 100% MIT license (<a href="https://news.ycombinator.com/item?id=39643136">https://news.ycombinator.com/item?id=39643136</a>). The feedback and response we got from the HN community was overwhelming. In the first month after launching, we processed about 20k tasks on the platform — today, we’re processing over 20k tasks per minute (>1 billion per month).<p>Scaling up this quickly was difficult — every task in Hatchet corresponds to at minimum 5 Postgres transactions and we would see bursts on Hatchet Cloud instances to over 5k tasks/second, which corresponds to roughly 25k transactions/second. As it turns out, a simple Postgres queue utilizing FOR UPDATE SKIP LOCKED doesn’t cut it at this scale. After provisioning the largest instance type that CloudSQL offers, we even discussed potentially moving some load off of Postgres in favor of something trendy like Clickhouse + Kafka.<p>But we doubled down on Postgres, and spent about 6 months learning how to operate Postgres databases at scale and reading the Postgres manual and several other resources [0] during commutes and at night. We stuck with Postgres for two reasons:<p>1. We wanted to make Hatchet as portable and easy to administer as possible, and felt that implementing our own storage engine specifically on Hatchet Cloud would be disingenuous at best, and in the worst case, would take our focus away from the open source community.<p>2. More importantly, Postgres is general-purpose, which is what makes it both great but hard to scale for some types of workloads. This is also what allows us to offer a general-purpose orchestration platform — we heavily utilize Postgres features like transactions, SKIP LOCKED, recursive queries, triggers, COPY FROM, and much more.<p>Which brings us to today. We’re announcing a full rewrite of the Hatchet engine — still built on Postgres — together with our task orchestration layer which is built on top of our underlying queue. To be more specific, we’re launching:<p>1. DAG-based workflows that support a much wider array of conditions, including sleep conditions, event-based triggering, and conditional execution based on parent output data [1].<p>2. Durable execution — durable execution refers to a function’s ability to recover from failure by caching intermediate results and automatically replaying them on a retry. We call a function with this ability a durable task. We also support durable sleep and durable events, which you can read more about here [2]<p>3. Queue features such as key-based concurrency queues (for implementing fair queueing), rate limiting, sticky assignment, and worker affinity.<p>4. Improved performance across every dimension we’ve tested, which we attribute to six improvements to the Hatchet architecture: range-based partitioning of time series tables, hash-based partitioning of task events (for updating task statuses), separating our monitoring tables from our queue, buffered reads and writes, switching all high-volume tables to use identity columns, and aggressive use of Postgres triggers.<p>We've also removed RabbitMQ as a required dependency for self-hosting.<p>We'd greatly appreciate any feedback you have and hope you get the chance to try out Hatchet.<p>[0] <a href="https://www.postgresql.org/docs/" rel="nofollow">https://www.postgresql.org/docs/</a><p>[1] <a href="https://docs.hatchet.run/home/conditional-workflows">https://docs.hatchet.run/home/conditional-workflows</a><p>[2] <a href="https://docs.hatchet.run/home/durable-execution">https://docs.hatchet.run/home/durable-execution</a>

Show HN: The C3 programming language (C alternative language)

Get it from here: <a href="https://github.com/c3lang/c3c" rel="nofollow">https://github.com/c3lang/c3c</a><p>In 2019, while contributing to the C2 language, I started up "C3" as a pet project while waiting for pull requests to be approved...<p>Now it's 6 years later and C3 well on its way to 1.0, having released 0.7.0 last week.<p>Unlike other C alternatives, C3 tries to evolve C – but without concern to backwards compatibility to the latter.<p>What it adds to C is among other things:<p>- Module system<p>- Semantic macros and compile time introspection<p>- Lightweight generic modules<p>- Zero overhead errors<p>- Build-in slices and SIMD types<p>- Gradual contracts<p>- Built-in checks in debug mode<p>You can find more details on the site: <a href="https://c3-lang.org" rel="nofollow">https://c3-lang.org</a> It might be interesting to look at the examples: <a href="https://c3-lang.org/language-overview/examples/" rel="nofollow">https://c3-lang.org/language-overview/examples/</a> so see how the language looks for some simple examples.<p><i>Some other links that might be interesting follows:</i><p>I've posted about C3 on HN before, notably<p>- <a href="https://news.ycombinator.com/item?id=24108980">https://news.ycombinator.com/item?id=24108980</a><p>- <a href="https://news.ycombinator.com/item?id=27876570">https://news.ycombinator.com/item?id=27876570</a><p>- <a href="https://news.ycombinator.com/item?id=32005678">https://news.ycombinator.com/item?id=32005678</a><p>Here are some interviews on C3:<p>- <a href="https://www.youtube.com/watch?v=UC8VDRJqXfc" rel="nofollow">https://www.youtube.com/watch?v=UC8VDRJqXfc</a><p>- <a href="https://www.youtube.com/watch?v=9rS8MVZH-vA" rel="nofollow">https://www.youtube.com/watch?v=9rS8MVZH-vA</a><p>Here is a series doing various tasks in C3:<p>- <a href="https://ebn.codeberg.page/programming/c3/c3-file-io/" rel="nofollow">https://ebn.codeberg.page/programming/c3/c3-file-io/</a><p>Some projects:<p>- Gameboy emulator <a href="https://github.com/OdnetninI/Gameboy-Emulator/" rel="nofollow">https://github.com/OdnetninI/Gameboy-Emulator/</a><p>- RISCV Bare metal Hello World: <a href="https://www.youtube.com/watch?v=0iAJxx6Ok4E" rel="nofollow">https://www.youtube.com/watch?v=0iAJxx6Ok4E</a><p>- "Depths of Daemonheim" roguelike <a href="https://github.com/TechnicalFowl/7DRL-2025" rel="nofollow">https://github.com/TechnicalFowl/7DRL-2025</a>

Show HN: The C3 programming language (C alternative language)

Get it from here: <a href="https://github.com/c3lang/c3c" rel="nofollow">https://github.com/c3lang/c3c</a><p>In 2019, while contributing to the C2 language, I started up "C3" as a pet project while waiting for pull requests to be approved...<p>Now it's 6 years later and C3 well on its way to 1.0, having released 0.7.0 last week.<p>Unlike other C alternatives, C3 tries to evolve C – but without concern to backwards compatibility to the latter.<p>What it adds to C is among other things:<p>- Module system<p>- Semantic macros and compile time introspection<p>- Lightweight generic modules<p>- Zero overhead errors<p>- Build-in slices and SIMD types<p>- Gradual contracts<p>- Built-in checks in debug mode<p>You can find more details on the site: <a href="https://c3-lang.org" rel="nofollow">https://c3-lang.org</a> It might be interesting to look at the examples: <a href="https://c3-lang.org/language-overview/examples/" rel="nofollow">https://c3-lang.org/language-overview/examples/</a> so see how the language looks for some simple examples.<p><i>Some other links that might be interesting follows:</i><p>I've posted about C3 on HN before, notably<p>- <a href="https://news.ycombinator.com/item?id=24108980">https://news.ycombinator.com/item?id=24108980</a><p>- <a href="https://news.ycombinator.com/item?id=27876570">https://news.ycombinator.com/item?id=27876570</a><p>- <a href="https://news.ycombinator.com/item?id=32005678">https://news.ycombinator.com/item?id=32005678</a><p>Here are some interviews on C3:<p>- <a href="https://www.youtube.com/watch?v=UC8VDRJqXfc" rel="nofollow">https://www.youtube.com/watch?v=UC8VDRJqXfc</a><p>- <a href="https://www.youtube.com/watch?v=9rS8MVZH-vA" rel="nofollow">https://www.youtube.com/watch?v=9rS8MVZH-vA</a><p>Here is a series doing various tasks in C3:<p>- <a href="https://ebn.codeberg.page/programming/c3/c3-file-io/" rel="nofollow">https://ebn.codeberg.page/programming/c3/c3-file-io/</a><p>Some projects:<p>- Gameboy emulator <a href="https://github.com/OdnetninI/Gameboy-Emulator/" rel="nofollow">https://github.com/OdnetninI/Gameboy-Emulator/</a><p>- RISCV Bare metal Hello World: <a href="https://www.youtube.com/watch?v=0iAJxx6Ok4E" rel="nofollow">https://www.youtube.com/watch?v=0iAJxx6Ok4E</a><p>- "Depths of Daemonheim" roguelike <a href="https://github.com/TechnicalFowl/7DRL-2025" rel="nofollow">https://github.com/TechnicalFowl/7DRL-2025</a>

Show HN: The C3 programming language (C alternative language)

Get it from here: <a href="https://github.com/c3lang/c3c" rel="nofollow">https://github.com/c3lang/c3c</a><p>In 2019, while contributing to the C2 language, I started up "C3" as a pet project while waiting for pull requests to be approved...<p>Now it's 6 years later and C3 well on its way to 1.0, having released 0.7.0 last week.<p>Unlike other C alternatives, C3 tries to evolve C – but without concern to backwards compatibility to the latter.<p>What it adds to C is among other things:<p>- Module system<p>- Semantic macros and compile time introspection<p>- Lightweight generic modules<p>- Zero overhead errors<p>- Build-in slices and SIMD types<p>- Gradual contracts<p>- Built-in checks in debug mode<p>You can find more details on the site: <a href="https://c3-lang.org" rel="nofollow">https://c3-lang.org</a> It might be interesting to look at the examples: <a href="https://c3-lang.org/language-overview/examples/" rel="nofollow">https://c3-lang.org/language-overview/examples/</a> so see how the language looks for some simple examples.<p><i>Some other links that might be interesting follows:</i><p>I've posted about C3 on HN before, notably<p>- <a href="https://news.ycombinator.com/item?id=24108980">https://news.ycombinator.com/item?id=24108980</a><p>- <a href="https://news.ycombinator.com/item?id=27876570">https://news.ycombinator.com/item?id=27876570</a><p>- <a href="https://news.ycombinator.com/item?id=32005678">https://news.ycombinator.com/item?id=32005678</a><p>Here are some interviews on C3:<p>- <a href="https://www.youtube.com/watch?v=UC8VDRJqXfc" rel="nofollow">https://www.youtube.com/watch?v=UC8VDRJqXfc</a><p>- <a href="https://www.youtube.com/watch?v=9rS8MVZH-vA" rel="nofollow">https://www.youtube.com/watch?v=9rS8MVZH-vA</a><p>Here is a series doing various tasks in C3:<p>- <a href="https://ebn.codeberg.page/programming/c3/c3-file-io/" rel="nofollow">https://ebn.codeberg.page/programming/c3/c3-file-io/</a><p>Some projects:<p>- Gameboy emulator <a href="https://github.com/OdnetninI/Gameboy-Emulator/" rel="nofollow">https://github.com/OdnetninI/Gameboy-Emulator/</a><p>- RISCV Bare metal Hello World: <a href="https://www.youtube.com/watch?v=0iAJxx6Ok4E" rel="nofollow">https://www.youtube.com/watch?v=0iAJxx6Ok4E</a><p>- "Depths of Daemonheim" roguelike <a href="https://github.com/TechnicalFowl/7DRL-2025" rel="nofollow">https://github.com/TechnicalFowl/7DRL-2025</a>

< 1 2 3 ... 31 32 33 34 35 ... 816 817 818 >