Pangram unicode test

I’m syncing Rust’s pangram exercise with problem-specifications, there is a test with unicode characters not present upstream:

"Victor jagt zwölf Boxkämpfer quer über den großen Sylter Deich."

This is a pangram, I think the test is only trying to detect if the program panics if there are unicode characters.

Should I upstream this with the unicode scenario?

1 Like

I wouldn’t be opposed.

However, the instructions tie a pangram to the English alphabet. So using non-English letters may lead to a student thinking your pangram isn’t actually a pangram.

Therefore, we probably want to update the text in the instructions to specify that non-English letters don’t preclude a phrase from being a pangram. It’s the English letters alone that determine that.

I’m not sure that Pangram (or its relative Isogram) is a great place for a mix of Unicode/Non-English + English in the same phrase.

I think these exercises should be limited to either English only, or have fully non-English phrases tested where the student is given the alphabet(s) they have to test against in the instructions.

Expecting the student to extract English-only characters to compare makes these exercises more confusing/difficult than they need to be.

And as I think about that, it feels to me as though maybe what we’d want here is two new exercises: Pangrams and Isograms, where the goal is the same, but now the student applies the rules to alphabets/phrases that are in other languages/alphabets.

I think we have other (better) opportunities in exercises like Anagram, Microblog, Reverse String, and maybe even Word Count to introduce Unicode without complicating an exercise quite so much.

2 Likes

The way that I will often mentor these is (and related “alphabet” related exercises) once the alphabet that is being used is covered, then how might we use a different definition of “alphabet”.

I do not see a lot of benefit of adding to what is fundamental to the exercise in the upstream if there is something specific in a language that is easily covered there and worth the extra test, as might exist with Rust that is interesting specific to that track.

1 Like

I also agree that in this case, I don’t think there is much to gain from non-unicode test cases. As mentioned, we have other exercises where people can practice handling unicode.

You’re right. It’s really not an interesting problem to make that test pass. I’ll omit it on the Rust track as well. Thanks for weighing in!