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.
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...
Man, I would have just learned Ruby.....
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.
Minor. Faster unpacking of @_, but it's not a huge win until you have a lot of arguments. The conventional Perl 5 interpreter has no JIT to leverage the benefits of stronger types, inline functions, unroll loops, etc. A factorial function has few arguments, so the unpack gain will be small to nothing.
All the gradual typing and signatures in the world do not matter when the interpreter on the target box is old enough to miss half of it, and then you are dragging in CPAN modules or juggling shebangs just to get the same script to run everywhere. Bash at least advertises its limits. Perl can look like a nicer shell tool right up until deployment turns into a version scavenger hunt.
I can't believe that.
TS code, compile time error "TS2345: Argument of type 'null' is not assignable to parameter of type 'number'."
function foo(x: number): void {};
foo(null);
Perl code: use Kavorka qw(fun);
use Types::Standard qw(Num);
fun foo(Num $x) {}
foo(undef);
This code passes CHECK (perl -c), but should not if you are correct.I invite you to prove the claim. Rewrite this with any module you like.
cperl types worked, and actually made it faster.
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).
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 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.
The autoffi thing is nothing new, I did that with cperl a decade ago. Added native types also, which he doesnt have yet.
If anything kills this project it won't be platform support. It'll be perl's regex engine, the ancient edge cases around it, and the fact that AI can spit out code that compiles while still missing half the assumptions buried in moduels people still need.
The parser is also quite good by now. Perl5 had to bootstrap pperl with parsing in the beginning, but not anymore.
The AI tar pits are real. "We'll use the regex crate - it will be fine." And me being like: "No."
OTOH, the AI kept telling me that I'm absolutely right, so it must be good. ;-)
Given any kind of "for" loop, how can it know that there is no synchronization required ? That no mutual exclusion is required ? No concurrent access of some kind ? Offloading some work to another process/thread is expensive, too
If the inner body of the loop is a pure-function, then that's easy (except for the performance part, which may require heuristics or something). But if the body is not pure .. ? I cannot see how this can work reliably with any random code
I wonder how long he waited for the CPAN nologin case. I remember requesting a CPAN account 3 years back and it took ~2 months for someone to look at and accept.
Project page is: https://perl.petamem.com/
Deep-linking into a reveal slideshow from the presentation - which is meant to be navigated by keyboard arrows ONLY - is suboptimal.
Yes, standing in such a hole is normally not recommended without shoring - safety first - but you do not know the soil specifics. It's like concrete, the excavator digging that hole stood on its very edge after 2 days of rain no problem at all. Disadvantage of such soil is that the percolation rate goes against zero.
Yes, doing a "Perl Interpreter" (it's way more than that) even with the help of the most advanced AI on the planet is PITA. The coding agents do fake, lie or are way out of their depth, but when you are used to limited AI since the 90ies - like me - you know how to handle it. Good News is that in 2 years you will probably tell your AI to create you - just for the laughs - a Perl interpreter AND smarthome system before you go to bed. You will have them ready for breakfast.
As for the maturity of the project, it's really too soon. I thought the German Perl Workshop would be in May, but mixed that up with last years' date, so I presented what I had. In about two months this should be nice(r).
And one final remark: Everyone knows Torvalds for the Linux kernel. Most don't know or ignore he did git too. Here, I presented two things: WHIP and pperl. WHIP being a smarthome solution way above and beyond what is available on the market today, but that seems to somehow evade peoples minds when they see the slides.