I was at the *Swiss Perl Workshop* and bought *Perl 6 Deep Dive* by Andrew Shitov. I’m again enthused by the idea of writing an application in Perl 6.
What would a new Oddmuse be like? If I’d write a new wiki using Perl 6 instead of Perl 5, I’d like to keep the name. It’d be Oddmuse 6 for a while, and then it’d simply be Oddmuse again.
Here’s how I would start:
I guess this is how far I got with Oddµ: A Small Wiki Written in Go, more or less. At the time I still believed in WikiCreole. But there’s more.
Oddµ: A Small Wiki Written in Go
This would result in a small, functional wiki. The user interface wouldn’t be template based, just like it isn’t template based right now. I think this is necessary to make it easy to mix and match extensions.
I think that, like before, we should move as much as possible into modules. So once we’re at this stage, we need to think about ways people can “compose grammars” for their text rendering.
#Oddmuse 6 #Perl 6
(Please contact me if you want to remove your comment.)
⁂
Hey! 😄
So it has been a while since I touched Oddmuse, but here are some of my (previous) random realizations.
FWIW, I’m quite happy with most of the things in oddmuse5. So if it was the same thing, but with biggest pain points (html5, CSP, etc.) resolved, I’d be a happy user again 😄
Ah, also you’d probably need caching just like in oddmuse5 (because Rakudo is currently slow-ish). It’s a useful mechanism for other things too.
– AlexDaniel 2018-09-09 16:59 UTC
---
Thanks for the feedback! Now all I need to do is find some time. 😄
– Alex Schroeder 2018-09-10 10:25 UTC
---
Oddmuse 6, first commit! 😄
– Alex Schroeder 2018-09-12 16:22 UTC
---
Rewriting it to be based on `Template::Mustache`. Still 100% `Text::Markown`. No revisions, no recent changes, no CSS. Not even page editing works. But there’s already and edit link and it shows the raw text if you click on it.
– Alex Schroeder 2018-09-13 15:59 UTC
---
Hi Alex,
I am proud I sold the book to you at the Swiss Perl Workshop 2018. Interesting blog, interesting plan. I hope you succeed and will give a good presentation about it next year at the Swiss Perl Workshop 2019.
I hope you don’t mind, but my happiness lead me to writing about you on Facebook, and I posted in the Perl6 group (which is open, no need for an account to read; an account is needed to write though).
– Wendy van Dijk 2018-09-13 18:50 UTC
---
Thanks! 😄
– Alex Schroeder 2018-09-13 21:54 UTC
---
Very interesting! A small, tractable wiki in the spirit of oddmuse would be fab!
I checked out the repo, and noticed that the first paragraph of the README is quite confusing: “...based on Perl 5 ... instead of Perl 5...”
– Robert Lemmen 2018-09-14 12:03 UTC
---
Hah! Thanks for the heads up. Fixed!
– Alex Schroeder 2018-09-14 17:05 UTC
---
Editing pages works. CSS added. Tests added.
– Alex Schroeder 2018-09-17 09:02 UTC
---
Sadly, `Git::PurePerl` only does `checkout` and `clone`, `Git::Simple` is archived by the author and all the forks are lagging behind instead of forging ahead, `Git::Wrapper` leads to a 404, wow, the situation is bad for Perl 6 Modules about git. Maybe LibGit2 will do it?
sudo apt install libgit2-dev zef install LibGit2
This fails with an error... but this works:
zef install https://github.com/CurtTilmes/perl6-libgit2.git
– Alex Schroeder 2018-09-17 11:06 UTC
---
I ran out of steam on LibGit2 a while back. It has the basics, but LibGit2 is really, really big (and complicated), so not everything is in there yet. – if it is missing anything you need, file an issue, and I may find some time to implement some more. It actually has a lot more functionality than is completely documented, if you can’t figure something out, file an issue and I’ll try to write some more docs. The tests can be helpful to figure out how to use it too.
I’m also trying to add more Perl 6-ish ways to do things conveniently, so if something seems harder than it should be, file an issue..
I’ll try to figure out why the install failed for you.
If you do want a database, I agree DBIish has issues, but I’m using DB::Pg with PostgreSQL pretty heavily and it has been solid for me. If anything breaks with it for you, please file an issue. I recently fixed a bug with embedded NULLs in arrays I haven’t yet released, so there will be a new release of it soon.
– Curt Tilmes 2018-09-18 01:19 UTC
---
Thanks!
– Alex Schroeder 2018-09-18 12:49 UTC
---
Anyway, I am happy to report that I have a form of recent changes:
As you can see, the IP numbers are pseudo-anonymized and colour coded.
– Alex Schroeder 2018-09-18 13:20 UTC