-
-
Notifications
You must be signed in to change notification settings - Fork 192
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
discussion: Making the Haskell track more idiomatic #194
Comments
Should |
I would find Note that if truly desired, 3999 could be allowed. |
Makes perfect sense. 😄 |
Considering that is issue is open for a while and that we have opened issues to deal with all the agreed changes, I'm closing this PR now, so that we can focus on the more practical issues. If anyone opposes, I will reopen it immediately. |
Making the Haskell track more interesting #192
Making the Haskell track more idiomatic
With #115 we started to review some exercises to make them feel more like Haskell. As a result, we did the following:
rna-transcription
to aMaybe
phone-number
to anEither String
nucleotide-count
to aMaybe
There are many other unidiomatic things that can appear in the track:
This doesn't means that we should change everything that is not idiomatic, because sometimes unidiomatic code can be easier for beginners. But we should not allow it when it it not clear that it is the case.
List of unidiomatic things in the track we could fix
grains
is not a total function. Could return a Maybe. (grains: Change return type to Maybe #197)hamming
is not defined for unequal lists. Could return a Maybe. (hamming: Change return to Maybe and match json #199)etl
uses String to represent a single letter. Should use Char. (etl: Change letter representation to Char #198)roman-numerals
could return a Maybe.crypto-square
returns a matrix as a String, with spaces representing row breaks and missing elements. (crypto-square: Rewrite it to match x-common or to be more idiomatic. #259)List of things we could do to promote idiomatic programming
strain
: change tests to enforce lazy processing of the lists. (discussion: Making the Haskell track more idiomatic #194)Anyone knows of any specific thing that could/should be changed to make this track more idiomatic?
The text was updated successfully, but these errors were encountered: