frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

SectorC: A C Compiler in 512 bytes

https://xorvoid.com/sectorc.html
124•valyala•4h ago•22 comments

Tiny C Compiler

https://bellard.org/tcc/
9•guerrilla•47m ago•2 comments

The F Word

http://muratbuffalo.blogspot.com/2026/02/friction.html
57•zdw•3d ago•21 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...
29•gnufx•3h ago•24 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...
3•randycupertino•7m ago•1 comments

Speed up responses with fast mode

https://code.claude.com/docs/en/fast-mode
65•surprisetalk•4h ago•79 comments

Software factories and the agentic moment

https://factory.strongdm.ai/
104•mellosouls•7h ago•198 comments

Hoot: Scheme on WebAssembly

https://www.spritely.institute/hoot/
147•AlexeyBrin•10h ago•26 comments

Stories from 25 Years of Software Development

https://susam.net/twenty-five-years-of-computing.html
107•vinhnx•7h ago•14 comments

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

https://openciv3.org/
856•klaussilveira•1d ago•262 comments

You Are Here

https://brooker.co.za/blog/2026/02/07/you-are-here.html
5•mltvc•43m ago•1 comments

Italy Railways Sabotaged

https://www.bbc.co.uk/news/articles/czr4rx04xjpo
23•vedantnair•49m ago•14 comments

The Waymo World Model

https://waymo.com/blog/2026/02/the-waymo-world-model-a-new-frontier-for-autonomous-driving-simula...
1101•xnx•1d ago•619 comments

First Proof

https://arxiv.org/abs/2602.05192
71•samasblack•7h ago•51 comments

Vocal Guide – belt sing without killing yourself

https://jesperordrup.github.io/vocal-guide/
246•jesperordrup•14h ago•82 comments

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

https://spillhistorie.no/2026/02/06/interview-with-sierra-veteran-al-lowe/
67•thelok•6h ago•12 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-...
12•mbitsnbites•3d ago•0 comments

I write games in C (yes, C)

https://jonathanwhiting.com/writing/blog/games_in_c/
146•valyala•4h ago•122 comments

Start all of your commands with a comma (2009)

https://rhodesmill.org/brandon/2009/commands-with-comma/
524•theblazehen•3d ago•195 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
34•momciloo•4h ago•5 comments

Reinforcement Learning from Human Feedback

https://rlhfbook.com/
95•onurkanbkrc•9h ago•5 comments

Selection Rather Than Prediction

https://voratiq.com/blog/selection-rather-than-prediction/
15•languid-photic•3d ago•5 comments

72M Points of Interest

https://tech.marksblogg.com/overture-places-pois.html
39•marklit•5d ago•6 comments

The AI boom is causing shortages everywhere else

https://www.washingtonpost.com/technology/2026/02/07/ai-spending-economy-shortages/
198•1vuio0pswjnm7•11h ago•289 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
51•rbanffy•4d ago•11 comments

France's homegrown open source online office suite

https://github.com/suitenumerique
627•nar001•8h ago•277 comments

Coding agents have replaced every framework I used

https://blog.alaindichiappari.dev/p/software-engineering-is-back
263•alainrk•9h ago•437 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

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

Where did all the starships go?

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

Show HN: Kappal – CLI to Run Docker Compose YML on Kubernetes for Local Dev

https://github.com/sandys/kappal
37•sandGorgon•2d ago•17 comments
Open in hackernews

Perlsecret – Perl secret operators and constants

https://metacpan.org/dist/perlsecret/view/lib/perlsecret.pod
77•mjs•1mo ago

Comments

tasty_freeze•3w ago
They one they named "baby cart" is something I have used to interpolate expressions into a string. Eg

    print "The sum is @{[1+2+3]}";
produces

    The sum is 6
instead of having to do:

    my $sum = 1+2+3;
    print "The sum is $sum";
aldousd666•3w ago
fun thing about this page: i have gemini in the browser and when I asked it 'why is the entire Wall Family naming these things?' it said it couldn't engage. Turns out 'goatse' is a forbidden word to Gemini.
teach•3w ago
Perl was the first language I learned on my own after graduating university many years ago. I fell in love with it because of quirks like these and because code written in it can have a poetic quality you don't see often.

Now I am old and joyless and I want the code I write for work to be boring and unsurprising.

But sometimes one can still want to write poetry.

ktpsns•3w ago
I discovered Perl directly after PHP before Web 2.0 days. Compared with the extreme, Java or (contemporary) Go, Perl codes (can) have a soul. Interestingly, modern ECMAScript (JS) brought in a few of the nice breweties from Perl world which I haven't seen a long time.
pavel_lishin•3w ago
I'm having to write a lot more perl at work than I would prefer to. It's still poetry, I suppose, but mostly of the bathroom-stall variety.
wvenable•3w ago
This isn't the first time I've said this but also had an early-career job writing Perl code. And I actually got to the point where I liked it -- I mean I could see why it had a following.

Subsequently I've written code in almost every popular programming language and I will frequently go years between languages but even so I have very little trouble picking them back up. Even C++. But not Perl. It's just so weird with so many idiosyncrasies that I just can't remember it.

rcyeh•3w ago
Agreed!

I learned Perl after trying C; and after struggling with `scanf` (not even getting to tokenization), the ease and speed of `while (<>) { @A = split;` for text-handling made it easy to fall in love. This (in the mid 90s, before Java, JavaScript, and C++ TR1) was also my first contact with associative arrays.

I was also drawn to the style of the Camel Book.

More than most other languages, Perl encouraged one-liners. When I later read PG's "Succinctness is power" essay, I thought of Perl.

https://paulgraham.com/power.html

quietbritishjim•3w ago
> This (in the mid 90s, before Java, JavaScript, and C++ TR1) was also my first contact with associative arrays.

Associative array is just a fancy term for map / dictionary. C++ has always had one of those, even before TR1: std::map (which is a tree under the hood). It does have the extra requirement that your key be ordered, which isn't part of the core definition of associate array[1]. But usually it's not a problem even if you don't actually need the ordering.

As I think you're implying, TR1 / C++11 added std::unordered_map, which is a hash table and doesn't need keys to be ordered (just hashable).

[1] It isn't part of the core definition of "map" either, which despite C++'s usage just means the same thing as dictionary / associative array. A lot of those early STL containers are confusingly named: e.g., in general, "list" just means some ordered sequence of elements, so it covers static arrays, dynamic arrays, and linked lists, but C++ uses this term for linked lists, probably the least likely understood meaning. It use of the term "vector" for contiguous dynamic arrays is very odd. But I'm now way off topic...

publicdebates•3w ago
Please show me an example of Perl that looks beautiful.

I don't believe you.

perlcommunity•3w ago
For you, https://metacpan.org/pod/Acme::Bleach
apercu•3w ago
It might be a generational thing.

When I started out as a sysadmin it was all shell and glue and different syntax on the 8 different flavours of *NIX I worked on between '94 and '97, then I found Perl suddenly you could actually build things that felt "real". It took me straight into web application development by '98, and I'm not sure I would have stayed in this field had it not existed (I was also working in neuro-diagnostics at the time and might have stayed there).

I saw some really elegant stuff written in Perl.

I also saw some absolutely unhinged, impossible-to-maintain garbage.

jrockway•3w ago
Perl was also my first productive language, and I do miss it a little. Write something like []string{"foo", "bar", "baz"} in go and you really appreciate qw(foo bar baz). Perl was always designed to be easy to type in, and maybe not so easy to maintain later. Good memories, but not for me anymore.
liveoneggs•3w ago
All of the Quote and Quote-like Operators, and __DATA__, and so many other niceties..
stouset•3w ago
Ruby took the best parts of Perl and got rid of the worst. Give it a shot :)
teach•3w ago
I actually switched to Ruby for this very reason and used it for a few years. I still have a soft spot for Ruby as well.

Unfortunately I had a different experience with the Ruby community, so I eventually switched to Python along with apparently everybody else.

hekkle•3w ago
OMG! The Goatsie operator =( )= is WILD! wilder than the glob wild operator *
bolangi•3w ago
After first experiences with linux shell scripting, sed, awk, and C in 1990s, I found perl a welcome refuge. Way more featureful than DOS .bat files or BASIC! Its capabilities (perl + cpan) have always well exceeded my need for CS goodness. People do complain about the syntax, oddly, without mentioning the numerous ways perl was designed to make common tasks easy to do. The "use strict" pragma, and early adoption of testing culture are two examples where perl led the programming community. With the continued maturing of the language and ecosystem, I can only smile at the naysayers and wish them happiness whatever the language.
grumpymuppet•3w ago
Perk is... quite a thing. I think if you like programming because you like believing you have secret knowledge... go for it. Perk will scratch that itch. But I do not believe it beings you closer to the pantheon of God's. Ai n't gonna stop anyone from dancing with the Satyrs though, if that's your jam.
lkbm•3w ago
> !! Bang bang boolean conversion

This isn't a special operator. This is just how "not" (!) works. In basically every language: C, C++, Javascript, Perl, etc., ! is the "not" operator so !12 gives you false (12 is truthy), and !!12 (not false) gives you true.

It's the same in languages that use different operators for "not". In python, the "not" operator is just the word not, and can write "not not 12" to get True. They didn't implement a special "not not" operator, anymore than Perl implemented a "!!" operator. They just implemented the basic ! / "not" operator.

johnisgood•3w ago
Keep in mind that applying the logical NOT operator twice (using `!!`) converts any integer expression into a strict boolean.

Any non-zero value becomes `1`, and zero remains `0`. This is commonly used for boolean normalization when the original expression yields a bitmask or arbitrary integer.

While the same result can be written as `(x != 0)`, the `!!x` idiom is concise, widely used in low-level C code, guarantees a result of exactly `0` or `1`, and works well in macros and constant expressions.

lkbm•3w ago
Fair, I forgot that C bools are just 0 and 1. That's where I first learned the !! trick, but it's been many a year.
defrost•3w ago
Err, C bools have two interpreted values, TRUE, and FALSE.

Confusingly (to some) they are integers and while 0 represents FALSE, any non 0 value represents TRUE.

It's pedantic, apologies, but that is why the GP refers to "convert to strict boolean"

stearns•3w ago
Right, that's the point of TFA. It doesn't list "special" operators, it lists "secret" operators -- that is, operators combined from existing sigils that do clever things.

The "Venus" operator is a good example: it's the '+' addition operator! You just add zero to a value that's coercible into a number.

The Eskimo operators are also interesting: similar to a SQL injection attack, you use a close brace and an open brace to stop and start a new code block from within a string that's sent to the interpreter. Perl didn't invent open and close braces: hence the verb "discover" rather than "implement".

The whole page is a bit of a lark, and a good example of why some of us don't enjoy Perl!

lkbm•3w ago
Fair point. I should've read more before jumping in here with my first reaction.
omoikane•3w ago
I didn't know ~- and -~ had a name, I have been using them in many (non-production) places where I wanted to save 2 bytes.

But looks like Perl's implementation is more limited compared to other languages:

    % perl -e 'print ~-(0), "\n"'
    18446744073709551615
    % ruby -e 'print ~-(0), "\n"'
    -1
https://metacpan.org/dist/perlsecret/view/lib/perlsecret.pod...
shawn_w•3w ago
You're not using `integer` in the perl example like you're supposed to. Try

    perl -Minteger -E 'say ~-0'
and it should work as expected.
omoikane•3w ago
That is true, but for the kind of code where I might use this trick, there usually aren't enough `~-$x` for `use integer;` to be worthwhile, I would just do `($x-1)` instead.
effnorwood•3w ago
Secret open source. Wait.
nineteen999•3w ago
Honestly the ones I probably use more than any other? =~ and !~

if ($text =~ /error/) { print "Found error\n"; }

if ($text !~ /error/) { print "No error found\n"; }

It's just fun and fast to slice and dice text this way.