Comments (3)
In some cases there's a bit of flexibility to what types you can use for a given exercise, and part of the challenge is coming up with the right types. I could go either way on this. If you don't provide types, or use typed holes, then the compiler will tell you what the necessary types are.
from haskell.
Yeah, I can see both sides. But I think it's way more instructive to not have to struggle though the types. Ideally you'd not have to look at the test file at all to see what types are necessary.
Maybe this could happen piecemeal. For exercises where the type is part of the goal, don't provide an explicit type signature. But for ones where the type is largely irrelevant to the exercise, no need in struggling with that as well.
from haskell.
I'll leave that up to your discretion, please feel free to submit pull requests to add comments and/or stub files for exercises where you think this would be most helpful. I'll close this issue and those can be handled on a case by case basis.
In many cases the types are opaque to the tests, and it's better to leave the actual definition of the type to the discretion of the person completing the exercise. There are often many valid ways to define a type, and even when only one type truly makes sense there's plenty that can be learned from by going down the wrong path.
from haskell.
Related Issues (20)
- Allow editing of package.yaml in web editor by adding it to files.solution
- Document with dependencies are available HOT 1
- Reference directory structure does not match current use. HOT 1
- README: Practice exercise directory structure doesn't show .meta/config.json nor .docs/instructions.md
- Enable merge commits HOT 5
- Implement Concept Exercise for booleans: Pac-Man Rules HOT 6
- Implement Concept Exercise for pattern matching: Guessing Game HOT 6
- Feature Request: Autogenerate template files with instructions for exercise development HOT 3
- Add a disclaimer about version constraints and Stackage
- [Learning Mode] Discussion: How do we best introduce case-expressions? HOT 5
- [Learning Mode] Discussion: building up to Pattern Matching HOT 26
- Which memoization library to use? HOT 3
- [Learning Mode] make learning track visible HOT 1
- Build error (connection failure, `Cabal file info not found...`) HOT 2
- Continuation of development of Learning Mode? HOT 3
- Intention behind not updating a Queen Attack test HOT 2
- docs: contributing instructions regarding versioning are out of date HOT 2
- Binary Search Tree: add test cases for `bstRight`, `bstLeft` HOT 5
- README: Replace outdated information about hints.md with correct information
- Are hints.md files rendering properly? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from haskell.