1. Rosetta Code mic drop
- Posted by petelomax Jan 15, 2022
- 3482 views
Many have tried, many have failed, many that is bar one.
Rosetta Code is a wiki-based programming website with implementations of common algorithms and solutions to various programming problems in many different programming languages. Created in 2007, it has since grown (as of 16/01/2022) to a total of 1,492 tasks, some of which are trivial, and some fiendishly difficult. At last, one programming language now has submissions for all 100% of them, and it is one you have probably never heard of: Phix
Phix is a zero-dependency 31.5MB download (though Linux users will almost certainly want/need to install IUP), with extensive help files and over 1000 bundled demos (~100 of which are win32-only), which can recompile itself (naturally the full source code is included) in under 20 seconds. The only real downside is that most of the runtime is written using inline x86 assembly, so it won't run on (eg) arm devices.
While Phix is primarily a desktop programming language, with versions for Windows and Linux, it comes bundled with p2js which can transpile most programs to JavaScript so they can be run in a web browser. Naturally certain activities such as reading and writing disk files are not permitted in a web browser due to security considerations, however of those 1,492 tasks, 734 or 49% have been marked as js compatible, with just 82 or 6% marked as incompatible, and obviously the remaining 45% are as yet unclassified.
PS: I suspect a young whippersnapper by the name of Wren is hot on my heels, maybe only two or three months away...
2. Re: Rosetta Code mic drop
- Posted by Lnettnay Jan 16, 2022
- 3407 views
Holy Crap! Good Job. Now how many can be done in plain Euphoria?
Lonny
3. Re: Rosetta Code mic drop
- Posted by ChrisB (moderator) Jan 17, 2022
- 3405 views
Congratulations, well done, a momentous task indeed.
4. Re: Rosetta Code mic drop
- Posted by petelomax Jan 17, 2022
- 3379 views
Holy Crap! Good Job.
Thanks!
Now how many can be done in plain Euphoria?
234 or 15.65% - leaving a mere 84.35% or 1,261
5. Re: Rosetta Code mic drop
- Posted by _tom (admin) Jan 21, 2022
- 3303 views
I sent a email to LWN.net ("Linux Weekly News") about a Phix article.
If we can come up with an article outline for about 1500 words, they might be interested. This would be something like a piece for a technical journal.
My idea is to use your Rosetta achievement as a hook to describe Phix.
I can edit what you come up with, or we can joint author.
This is a chance for all Euphoria/Phix fans to contribute their ideas...
be well
_tom
6. Re: Rosetta Code mic drop
- Posted by petelomax Jan 21, 2022
- 3296 views
I sent a email to LWN.net ("Linux Weekly News") about a Phix article.
If we can come up with an article outline for about 1500 words, they might be interested. This would be something like a piece for a technical journal.
My idea is to use your Rosetta achievement as a hook to describe Phix.
I can edit what you come up with, or we can joint author.
This is a chance for all Euphoria/Phix fans to contribute their ideas...
Yes!!! - I was thinking/hoping along similar lines.
Post#1 is 246 words, so they want six times that.
There is plenty of text at http://phix.x10.mx/docs/html/p2js.htm though not at all suitable as-is - in particular aimed too much at Phix users, anything like "enum type" is just going to be completely meaningless to their target audience.
Actually, do you know of any existing articles I should read, if only to try and gauge what that target audience actually is?
[EDIT] I found a few: Julia concurrency, Python arg defaults, Go and Ruby for loops.
Off the top of my head, some possible topics/paragraphs:
- Ease (or lack thereof) of installation and use. I'm almost certainly too biased to pen that. The short version is install Phix, run pwa\p2js.exw, "Choose File"(==Ctrl O), pick from (say) demo/rosetta (not beginning "without js"), and press F5.
- Technical challenges. The biggest one being desktop/Phix's copy-on-write-semantics vs JavaScript's pass-by-sharing-semantics, which has been solved by "with javascript_semantics". I suspect that 0 vs 1-based indexes should either be omitted or a minor throw-away line, likewise JavaScript not having characters (esp tab) simply isn't worth shouting about and certainly not going to get anyone excited. It kills me to say the latter might also be true of the drop-in mpfr.js replacement, and indeed most and maybe all of the low-level hard effort I've put in behind the scenes. Admitting that pGUI.js/css is far from complete and needs any help it can get is a bit of a must, as of course are several (carefully) selected links from https://rosettacode.org/wiki/Category:Phix/online.
- Development process is worth a quick mention, specifically develop and debug on desktop/Phix first, before trying to run anything in a browser.
- Case studies - does anything on rosettacode strike anyone as being suitable, or at the very least sufficiently interesting?
- Wishlist - maybe finish with some optimistric pipe dreams and/or hopes for the future.
The key point is to omit anything which is likely to be meaningless to a wider audience.
The key question at every stage is what is going to catch their eye and keep them engaged?
7. Re: Rosetta Code mic drop
- Posted by ghaberek (admin) Jan 22, 2022
- 3259 views
I sent a email to LWN.net ("Linux Weekly News") about a Phix article.
If we can come up with an article outline for about 1500 words, they might be interested. This would be something like a piece for a technical journal.
My idea is to use your Rosetta achievement as a hook to describe Phix.
I can edit what you come up with, or we can joint author.
This is a chance for all Euphoria/Phix fans to contribute their ideas...
I guess if Pete wants to do this then that's his right and his prerogative. But given the state of things right now I think this would go very badly for Euphoria.
Now's not the time for promotion. We need to clean up the mess we're in and then we can embark on a promotional campaign when we have something to put on display.
-Greg
8. Re: Rosetta Code mic drop
- Posted by petelomax Jan 23, 2022
- 3194 views
I guess if Pete wants to do this then that's his right and his prerogative. But given the state of things right now I think this would go very badly for Euphoria.
Now's not the time for promotion. We need to clean up the mess we're in and then we can embark on a promotional campaign when we have something to put on display.
You are probably right, LWN might well be a little by the headline "Euphoria has 234 entries (15.58%) and joint 93rd place"...
Annoyingly, some oik posted a task in the middle of a Sunday afternoon, and I missed it so Phix is back down to 99.93%... for the next 7 days, at least, unless I do a sneaky edit...
9. Re: Rosetta Code mic drop
- Posted by _tom (admin) Jan 25, 2022
- 3146 views
I created a pcan page.
Just some starting ideas. Sorry about messing up pcan.
be well
10. Re: Rosetta Code mic drop
- Posted by petelomax Jan 26, 2022
- 3098 views
- Last edited Jan 31, 2022
I created a pcan page.
Just some starting ideas. Sorry about messing up pcan.
be well
No worries. I've restored the create page and moved your content to http://phix.x10.mx/pmwiki/pmwiki.php?n=Main.Tom-lwn
I've changed the styling to match LWN a bit better, I expect to be called on in that regard again.
I am a bit worried about the "story". It certainly needs a few nice pictures and some online links, and the wow factor.
Here's a little snippet I just now felt compelled to write:
Phix is a deliberately simple language, which poses some challenges when presented with tasks such as closures.
Phix goes against the grain by not supporting many programming facilities usually taken for granted, in this case
on the grounds that such "hidden data" may make debugging much more difficult. Another is that while you can
of course leave some components unaltered for maintainability, the notion that things must not be modified
because re-compilation is so appallingly slow, simply does not apply. Another is "extreme generic code" which
you simply cannot comprehend what it is doing by reading it.
I've also added a case study: multiline shebang to the above page.
11. Re: Rosetta Code mic drop
- Posted by euphoric (admin) Feb 04, 2022
- 2959 views
Many have tried, many have failed, many that is bar one.
Brilliant, Pete! Congrats! You are a god among men.
Would love to hear your thoughts on where you're taking Phix next.
12. Re: Rosetta Code mic drop
- Posted by katsmeow Feb 08, 2022
- 2879 views
Stunning, Pete!
13. Re: Rosetta Code mic drop
- Posted by _tom (admin) Mar 05, 2022
- 2643 views
Nogo on LWN. Must re-think completely. Need help!
be well
14. Re: Rosetta Code mic drop
- Posted by petelomax Mar 06, 2022
- 2649 views
Nogo on LWN. Must re-think completely. Need help!
be well
OK, leave it with me, I'll have another go. Can you paste a copy of their rejection letter to http://phix.x10.mx/pmwiki/pmwiki.php?n=Main.Tom-lwn for me so I know what I'm dealing with, hopefully it might offer some hints as to what points need addressing.
15. Re: Rosetta Code mic drop
- Posted by _tom (admin) Mar 06, 2022
- 2630 views
Take a look
be well