Is this a language that comes in many variants? If so, which variant should we support? No, just 1.0.5 or later.
Does the language have an official logo? If so
please include a link to an example svg or png orpng
please list the attribution rights of that logo
Created from scratch by mine own fair hands. Erm, Academic Free License version 3.0 would match similar bits of Phix.
Let me know if you think it needs improving or struggle with it in any way (not that Iām a graphics expert, nor am I expecting much, but will accept advice, plus anything that might make exercism look better would not do me any harm). There is also a meaningless green tick knocking around in several places that deserves replacing with that as well (by me), which I mention because the origin/attribution rights of that are long lost.
Is there a testing framework available for the language? Yes, described at unit_test which creates consistent output the testrunner (already done) can parse.
Is this language listed as āsupportedā by Highlightjs? Yes, but only fairly recently. My cm5 attempt can be found as phix.js in the root of the repository linked below, and a demo of it at Syntax Highlighting With CodeMirror 5 - alas cm6 proved itself way beyond my skill set.
Who will be leading the effort to launch the track? Pete Lomax @petelomax (language author)
Iāve created a temporary draft repository: GitHub - petelomax/exercism-phix: Exercism exercises in Phix. - I fully expect that will end up getting deleted and am not even slightly fazed by the thought of transfering all files out of it manually.
In fact and tbh, Iām experiencing a few silly āclone/forkā issues that make a āgithub-cleanā repository sound sensible.
Iād also be fine with starting small and/or applying a sensible rate-limit to avoid overloading anyone or anything.
Iāve done quite a few, mainly because I realised early on it would need 1.0.5 and figured Iād better finish fiddling with and ship that first.
I only asked yesterday, @axtens has offered to lurk/mentor. The broken test runner may be putting people off. I also added a bit of humour, see if that gets any better responses.
https://exercism.org/docs/tracks/phix/learning repeats the learning materials for Euphoria. Perhaps we can just link to the learning page for Euphoria instead of duplicating and having to sync content.
RosettaCode is sometimes cased as rosettacode.
https://exercism.org/docs/tracks/phix/tests#h-editing-the-test-exw-file-s indicates tests arenāt skipped by default and the user has to manually skip a test. I feel like the tests should be skipped by default and then the user intervenes to run a test. The online test runner would unskip and run all tests. Thatās how the Pyret track works and likely others as well.
Finally, the about section for https://exercism.org/tracks/phix/about is a bit long for my taste and replicates content from the key features section. This is the first thing students will encounter on the track so I see it as like an elevator pitch for the track.
Finally, itās not necessary, but itās nice if the exercises are sorted by easy/medium/hard and then exercise name. Thatāll let a student easily find exercises by difficulty which in my experience is more useful. Sorting by name alone is adequate, but say Iām looking for a certain exercise. Iām more likely to do a search at the top for Zebra rather than scroll to the bottom of the list. I canāt do a search for all easy exercises so thatās why I prefer to sort by difficulty first.
Iāve cleaned up install - quite right that info belongs on my download page, not on Exercism.
Iāve changed learning to link to Euphoria, and re-cased RosettaCode.
Not sure about skipping tests by default. I could get behind quit on first failure. Why would CLI want to differ from online? Wouldnāt that lead to some students thinking theyāve finished, only to submit and find it does not work?
Iāll agree about is too long, not sure what to do about that and suspect Iām not the best person to fix it.
Iāve re-sorted the exercises by difficulty. Maybe Atbash Cipher ā¦ Word Count should be re-assigned medium levels.
This is how (almost) every track on Exercism works. The first test is unskipped and the rest are skipped. The online editor mimics the same behaviour (and the test runner needs to unskip all tests)
Ugh. I can only see that as just being deliberately annoying.
While the majority might, the following dozen donāt seem to: go, euphoria, vimscript, prolog, nim, julia, cobol, gleam, python, racket, lua, and zig. (I could be quite wrong)
Racketās RackUnit framework doesnāt provide a built-in way for skipping test cases inside a test suite. It hasnāt been a priority for me, but I suppose I could adapt the Pyret approach and use helper functions to create test cases that take a Boolean for skipping / not skipping its execution. The disadvantage there is that a skipped test isnāt reported at all.
Exercism is focussed around TDD. Having tens or hundreds of tests failing when you first run your code is overwhelming, so we let people solve things one step at a time.
As I said, I can get behind quit on first failure, so the student only ever sees one/the first error, but as for being forced to change 30+ false to true or delete/comment 30+ āskip linesā, weāll agree to disagree.
I wouldnāt go so far as to stop someone else making such a change, but not planning to put in any effort along those lines myself.