frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Tiny C Compiler

https://bellard.org/tcc/
126•guerrilla•4h ago•55 comments

SectorC: A C Compiler in 512 bytes

https://xorvoid.com/sectorc.html
211•valyala•8h ago•38 comments

Speed up responses with fast mode

https://code.claude.com/docs/en/fast-mode
119•surprisetalk•8h ago•128 comments

Show HN: LocalGPT – A local-first AI assistant in Rust with persistent memory

https://github.com/localgpt-app/localgpt
3•yi_wang•49m ago•0 comments

Brookhaven Lab's RHIC concludes 25-year run with final collisions

https://www.hpcwire.com/off-the-wire/brookhaven-labs-rhic-concludes-25-year-run-with-final-collis...
47•gnufx•7h ago•49 comments

Software factories and the agentic moment

https://factory.strongdm.ai/
142•mellosouls•11h ago•305 comments

OpenCiv3: Open-source, cross-platform reimagining of Civilization III

https://openciv3.org/
889•klaussilveira•1d ago•270 comments

Stories from 25 Years of Software Development

https://susam.net/twenty-five-years-of-computing.html
139•vinhnx•11h ago•16 comments

Hoot: Scheme on WebAssembly

https://www.spritely.institute/hoot/
169•AlexeyBrin•13h ago•30 comments

FDA intends to take action against non-FDA-approved GLP-1 drugs

https://www.fda.gov/news-events/press-announcements/fda-intends-take-action-against-non-fda-appro...
75•randycupertino•3h ago•128 comments

First Proof

https://arxiv.org/abs/2602.05192
106•samasblack•10h ago•69 comments

Vocal Guide – belt sing without killing yourself

https://jesperordrup.github.io/vocal-guide/
273•jesperordrup•18h ago•87 comments

Show HN: I saw this cool navigation reveal, so I made a simple HTML+CSS version

https://github.com/Momciloo/fun-with-clip-path
60•momciloo•8h ago•11 comments

Show HN: A luma dependent chroma compression algorithm (image compression)

https://www.bitsnbites.eu/a-spatial-domain-variable-block-size-luma-dependent-chroma-compression-...
31•mbitsnbites•3d ago•2 comments

Show HN: Craftplan – Elixir-based micro-ERP for small-scale manufacturers

https://puemos.github.io/craftplan/
7•deofoo•4d ago•1 comments

Eigen: Building a Workspace

https://reindernijhoff.net/2025/10/eigen-building-a-workspace/
7•todsacerdoti•4d ago•2 comments

Al Lowe on model trains, funny deaths and working with Disney

https://spillhistorie.no/2026/02/06/interview-with-sierra-veteran-al-lowe/
88•thelok•10h ago•18 comments

Start all of your commands with a comma (2009)

https://rhodesmill.org/brandon/2009/commands-with-comma/
555•theblazehen•3d ago•205 comments

Microsoft account bugs locked me out of Notepad – Are thin clients ruining PCs?

https://www.windowscentral.com/microsoft/windows-11/windows-locked-me-out-of-notepad-is-the-thin-...
99•josephcsible•6h ago•121 comments

The F Word

http://muratbuffalo.blogspot.com/2026/02/friction.html
100•zdw•3d ago•51 comments

I write games in C (yes, C) (2016)

https://jonathanwhiting.com/writing/blog/games_in_c/
175•valyala•8h ago•165 comments

The AI boom is causing shortages everywhere else

https://www.washingtonpost.com/technology/2026/02/07/ai-spending-economy-shortages/
262•1vuio0pswjnm7•14h ago•415 comments

Selection rather than prediction

https://voratiq.com/blog/selection-rather-than-prediction/
26•languid-photic•4d ago•7 comments

Reinforcement Learning from Human Feedback

https://rlhfbook.com/
114•onurkanbkrc•13h ago•5 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

https://arcadeblogger.com/2026/02/02/unseen-footage-of-atari-battlezone-cabinet-production/
139•videotopia•4d ago•46 comments

Where did all the starships go?

https://www.datawrapper.de/blog/science-fiction-decline
131•speckx•4d ago•203 comments

Learning from context is harder than we thought

https://hy.tencent.com/research/100025?langVersion=en
220•limoce•4d ago•123 comments

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
295•isitcontent•1d ago•39 comments

A Fresh Look at IBM 3270 Information Display System

https://www.rs-online.com/designspark/a-fresh-look-at-ibm-3270-information-display-system
59•rbanffy•4d ago•20 comments

Hackers (1995) Animated Experience

https://hackers-1995.vercel.app/
577•todsacerdoti•1d ago•279 comments
Open in hackernews

Show HN: The Blots Programming Language

https://blots-lang.org/
55•paulrusso•4mo ago
I've been working on this small, slightly weird expression-oriented programming language for a little while now and feel ready to share it with others. I use it pretty often now in my day-to-day and work life, as a scratchpad for doing a bit of quick math or picking some pieces of data out of a JSON payload.

Would really appreciate any feedback about the syntax, docs, features that are glaringly missing, etc. Before anybody mentions it: I know the performance is pretty lousy when dealing with a lot of data. If you can believe it, the runtime is about 100x faster than it used to be! Long term I'd like to switch to a proper bytecode interpreter, but so far performance has been Good Enough for my use cases.

Thanks for taking a look!

Comments

abatilo•4mo ago
What would you say is a benefit of using this over using jq?
paulrusso•4mo ago
Good question! Personally, I don't often reach for jq as I've never really taken the time to get comfortable with its syntax. Obviously I can now have an LLM generate me a jq command that'll do what I want, but I'd prefer to be able to at least visually scan the suggested implementation to make sure it actually does the thing I want before I go and run it.

More broadly, a lot of other command line utils for transforming input have such an emphasis on terseness that I sort of bounce off of them. awk and sed and jq are all super powerful tools, but I wanted a tool that had a more balanced trade-off of characters vs. clarity.

markchristian•4mo ago
Super cool! I’ve always wanted to make my own lil language and I’ve always been too intimidated to try.
fuzztester•4mo ago
nowadays it is somewhat easier to make your own programming language, than it was 10 to 20 or 30 years ago, because there are a lot of resources such as tutorials and open source projects available on the internet, in both text and video formats, to learn from. there are also many online forums where you can ask questions and get answers and advice.
iberator•4mo ago
Start with writing a custom cpu emulator -> machine code -> assembler -> compiler

Sounds hard but it's quite easy with stack architecture :) Easier than learning JS for sure

japprovato•4mo ago
I’m curious, what was the hardest part about making Blots? And what was the most fun part?
mrlonglong•4mo ago
Blot on the landscape was a brilliant subversive comedy British TV series from the 80s.
RodgerTheGreat•4mo ago
For contrast, here's how I'd handle the example given on the front page in Lil[0]:

    i:"%j" parse shell["curl -s https://api.weather.gov/gridpoints/BOU/63,62/forecast"].out
    t:i.properties.periods..temperature
    o.average:(sum t)/count t
    o.minimum:min t
    o.maximum:max t
    show[o]
Lil doesn't have implicit parsing of .json arguments like Blots- certainly a nice feature for the niche Blots is aimed at. Lil also doesn't have an arithmetic average as a builtin like Blots, but in this case it's easy enough to do without.

The biggest difference here is how Lil handles indexing: The ".." in that second line can be read as "for every index"; a wildcard. I can follow the mapping that occurs in Blots' "via" expression, but I find it less clear in this example.

It can also be nice to treat lists-of-objects as proper SQL-like tables:

     select number name temperature windSpeed from table i.properties.periods
    +--------+-------------------+-------------+---------------+
    | number | name              | temperature | windSpeed     |
    +--------+-------------------+-------------+---------------+
    | 1      | "This Afternoon"  | 54          | "14 mph"      |
    | 2      | "Tonight"         | 46          | "3 to 12 mph" |
    | 3      | "Wednesday"       | 69          | "5 mph"       |
    | 4      | "Wednesday Night" | 45          | "3 mph"       |
    | 5      | "Thursday"        | 79          | "5 mph"       |
    | 6      | "Thursday Night"  | 49          | "5 mph"       |
    | 7      | "Friday"          | 83          | "2 to 6 mph"  |
    | 8      | "Friday Night"    | 52          | "6 mph"       |
    | 9      | "Saturday"        | 81          | "3 to 8 mph"  |
    | 10     | "Saturday Night"  | 53          | "3 to 8 mph"  |
    | 11     | "Sunday"          | 81          | "3 to 7 mph"  |
    | 12     | "Sunday Night"    | 54          | "3 to 7 mph"  |
    | 13     | "Monday"          | 77          | "3 to 7 mph"  |
    | 14     | "Monday Night"    | 53          | "3 to 7 mph"  |
    +--------+-------------------+-------------+---------------+
I hope you continue to tinker and evolve Blots; a personal scripting language guided by the use-cases you encounter naturally can be very rewarding and useful.

[0] http://beyondloom.com/tools/trylil.html

iberator•4mo ago
wow that sql like code is really impressive
flymasterv•4mo ago
Lil is such a beautiful language. It’s so much fun for little data tasks like this.
hn-ifs•4mo ago
This is the sort of thing I use Nushell for, brilliant data focus shell!
hn-ifs•4mo ago
Now I'm on the computer this is the Nushell variant, you could probably do something with reduce too:

    ~> http get https://api.weather.gov/gridpoints/BOU/63,62/forecast 
       | from json 
       | get properties.periods.temperature 
       | {average: ($in | math avg) minimum: ($in | math min) maximum: ($in | math max)}
    ╭─────────┬───────╮
    │ average │ 66.36 │
    │ minimum │ 52    │
    │ maximum │ 81    │
    ╰─────────┴───────╯
    ~>
rixed•4mo ago
From the readme:

  [1, 2, 3] * 10  // [10, 20, 30] (because [1 * 10 = 10, 2 * 10 = 20, 3 * 10 = 30])
  [4, 5, 6] > 3 // true (because [4 > 3 = true, 5 > 3 = true, 6 > 3 = true], so the condition is true for all elements)
I guess most people would have expected that second expression to return

  [true, true, true]
Is this really more practical to single out booleans like that, compared to having a separate step for ANDing?