Awesome to see a perl JIT. I love perl, and it's exciting to see something that tries to offer good-enough compatibility to run most perl code.
quantummagic [3 hidden]5 mins ago
I'm interested, but can't navigate the website. The down-arrow in the lower-right is unclickable, maybe covered by some semi-transparent chrome of my browser, not sure. And no idea why there need to be 4 directional arrows.
andrewl-hn [3 hidden]5 mins ago
That's Reveal.js / Slides.com format. It became very popular in 2010s. The idea behind the 2-d navigation is that you can use left-to-right to move between chapters, and move down to dive into a specific chapter. This allows you to skip chapters due to time constraints. Or hide gnarly details about something so that these specific slides do not break the flow of presentation but still having them available for the audience online. Or, having slides announcing demos, but if demos do not work the down slide would have a video demonstrating how the demo is supposed to work. Many possibilities like this. Also the slides are produces using Markdown, so the format was appealing to many authors.
However, doing chapters well turned out to be tricky. Ideally you want them to be of similar size and have 3 to 7 of them in the talk, but many presentations aren't structured like this. The rise of Slideshare and SpeakerDeck for sharing slides in mid 2010s caused this 2-d navigation to go out of favor: those services only support linear static slides. This is also a reason why people use fewer animations in slides nowadays and why tools like Prezi didn't catch on (that was another presentation tool with non-standard navigation that went out of favor very quickly).
Many people still use Reveal.js to make their slides but they stick to left-to-right nav only.
sherr [3 hidden]5 mins ago
Going to the link and just hitting the spacebar worked for me. Next slide, and so on. Firefox/Linux.
interroboink [3 hidden]5 mins ago
I have the same problem with the mouse (little page marker overlay covers the down arrow).
Basically he wanted home automation in Perl to control his geothermal/solar house, and ended up reimplementing Perl with AI. That's some yak shaving...
jwineinger [3 hidden]5 mins ago
Standing in that hole without shoring... no thanks. Impressive project nonetheless though
The project relies on Rayon [1] for scheduling parallel tasks and Cranelift [2] to JIT the hot loops.
There are plenty of other interesting features like auto-FFI, bytecode caching (similar to Python's .pyc files), and "daemonize" mode (similar to mod_perl or FastCGI).
In case HN shows its user hostility again by cutting off the URI fragment, the intended deep-link was presentation slide #/4/1/1
throwaway27448 [3 hidden]5 mins ago
Ugh, deep links should be part of the path, and anchor should be where on the page to scroll. Very annoying slide software. If the content weren't so good I simply wouldn't bother.
jaen [3 hidden]5 mins ago
HTML+JavaScript-based statically hostable apps (eg. presentations) can't use paths as deep links, since there's no standard for simple static hosting or URL rewriting (even 30 years later). Oh well.
gpvos [3 hidden]5 mins ago
You should be able to use the query part of the URL (after ?). You can get at it with Javascript, but it doesn't influence which static HTML page is served.
gertop [3 hidden]5 mins ago
They absolutely can generate the file tree so that each slide has its own url.
They also could use the query part on the url rather than anchor.
Lastly statically hosted doesn't mean no URL rewriting, they could again catch links to parts easily.
The poor UX of these tools is just a lack of will, not a technical limitation.
Then again hacker news should probably not blanket delete the hash in URLs either.
bheadmaster [3 hidden]5 mins ago
The down arrow doesn't respond because of the overlay page number. Only when clicking a little bit left of the overlay, it will work.
I can't help but giggle at the fact that AI written project doesn't seem to get its home page right.
daotoad [3 hidden]5 mins ago
It's a kind of crappy slide deck, not a proper home page. Even worse, the link drops you into the middle of the deck. (TBF, it wouldn't be so bad if you know that it's a slide deck when you load the page.)
Try using the arrow keys to navigate. It took me multiple tries to get it figured out.
Use up/down to navigate within a chapter/topic.
Use left/right to switch between topics.
postepowanieadm [3 hidden]5 mins ago
I'm too scared to check how good llms are in writing perl.
andrewl-hn [3 hidden]5 mins ago
Very good, actually. But you have to nudge them slightly. Tell them you prefer the modern version of the language, with gradual typing† and function signatures, and you'll get very good results. Perl interpreter comes standard on modern OSes and due to permissive licensing and impeccable backwards compatibility you can always assume you deal with very modern versions of Perl.
I write Perl scripts that are 10-100 lines of code, and at this size Perl is a Strictly Better Bash: better syntax, some type checking, better text support, and still effortless calls to external processes: essentially you put a command with arguments in backticks, and you get it's output. Ruby can do it too, but not all systems have it. Python is another obvious choice but calling external commands in it is annoying. I also use Perl for some one-liners as a better `sed` for text replacements.
† Perl nowadays have TypeScript-style type checking for function parameters. So, while the syntax is wild sometimes, the language is much better than it used to be.
throwaway27448 [3 hidden]5 mins ago
Are you talking about perl 5 or perl 6?
jasonjayr [3 hidden]5 mins ago
A few years ago; perl 6 renamed itself to 'raku', so the perl 5 folks can continue to improve/maintain the original 'perl'.
topspin [3 hidden]5 mins ago
5 has this. There are modules that get you to function signatures and type constraints. It's all opt-in and, as was said, you have to nudge LLMs to use it, but they can and the results are indeed better.
man8alexd [3 hidden]5 mins ago
Codex for some reason sometimes runs Perl instead of Python to work with local files
genpfault [3 hidden]5 mins ago
Not to be confused with GNU parallel[1], written in Perl.
I had to build a Perl implementation of the Chaskey mac algorithm. ChatGPT spat out a working Perl prototype based on a C file for Arduino. It quite slow with not very much to optimize, so I made it write it with XS. A hour later I have a working XS implementation that compiles and tests cleanly.
So the AutoFFI thing is super interesting. The .plc also.
However, doing chapters well turned out to be tricky. Ideally you want them to be of similar size and have 3 to 7 of them in the talk, but many presentations aren't structured like this. The rise of Slideshare and SpeakerDeck for sharing slides in mid 2010s caused this 2-d navigation to go out of favor: those services only support linear static slides. This is also a reason why people use fewer animations in slides nowadays and why tools like Prezi didn't catch on (that was another presentation tool with non-standard navigation that went out of favor very quickly).
Many people still use Reveal.js to make their slides but they stick to left-to-right nav only.
But using keyboard arrow keys work for me.
Basically he wanted home automation in Perl to control his geothermal/solar house, and ended up reimplementing Perl with AI. That's some yak shaving...
https://perl.petamem.com/docs/eng/petaperl/differences.html
There are plenty of other interesting features like auto-FFI, bytecode caching (similar to Python's .pyc files), and "daemonize" mode (similar to mod_perl or FastCGI).
[1] https://docs.rs/rayon/latest/rayon/
[2] https://cranelift.dev
In case HN shows its user hostility again by cutting off the URI fragment, the intended deep-link was presentation slide #/4/1/1
They also could use the query part on the url rather than anchor.
Lastly statically hosted doesn't mean no URL rewriting, they could again catch links to parts easily.
The poor UX of these tools is just a lack of will, not a technical limitation.
Then again hacker news should probably not blanket delete the hash in URLs either.
I can't help but giggle at the fact that AI written project doesn't seem to get its home page right.
Try using the arrow keys to navigate. It took me multiple tries to get it figured out.
Use up/down to navigate within a chapter/topic. Use left/right to switch between topics.
I write Perl scripts that are 10-100 lines of code, and at this size Perl is a Strictly Better Bash: better syntax, some type checking, better text support, and still effortless calls to external processes: essentially you put a command with arguments in backticks, and you get it's output. Ruby can do it too, but not all systems have it. Python is another obvious choice but calling external commands in it is annoying. I also use Perl for some one-liners as a better `sed` for text replacements.
† Perl nowadays have TypeScript-style type checking for function parameters. So, while the syntax is wild sometimes, the language is much better than it used to be.
[1]: https://en.wikipedia.org/wiki/GNU_parallel
I had to build a Perl implementation of the Chaskey mac algorithm. ChatGPT spat out a working Perl prototype based on a C file for Arduino. It quite slow with not very much to optimize, so I made it write it with XS. A hour later I have a working XS implementation that compiles and tests cleanly.
So the AutoFFI thing is super interesting. The .plc also.