Comments (5)
The best READMEs seem to leave a fair amount of ambiguity, allowing different languages to implement different things without being inconsistent with the spec.
Maybe we could change the README to say "brackets and braces", leaving the interpretation more open.
from problem-specifications.
It was not clear to me that a certain amount of ambiguity is desired. My expectation was that e.g. brackets('{[ ]}')
should not raise an exception in one and pass in another track.
The approaches and coding styles are sometimes very different between various languages so maybe it makes sense not to lay everything down to the last detail. Didn't really think about that aspect.
from problem-specifications.
If I understand, one issue is if it's fair for test programs to test three kinds of braces when the readme mentions only two. I suppose someone could write some logic that only worked for two kinds of braces but not be easily adapted to three, then be frustrated to discover they must handle three. I expect that's rare though, and Katrina's suggestion of making the readme a little less specific might help in those cases.
Another issue is differences between the implementation in the Go and Javascript tracks. I think they currently have the same test cases and expect the same results, other than the Go API also having this error return. None of the current test cases are considered errors though, so the interpretation (that non-brace content would be an error) of the Go example program doesn't seem relevant. Solvers in the Go are not compelled to make the same interpretation and in fact are free to return nil (no error) in all cases.
from problem-specifications.
I was thinking the wrong way. If it would be a normal application I would make sure that the behaviour with other characters than brackets is tested. But here we actually win some freedom by not testing it because every user can decide independently how to handle it.
Nonetheless I like Katrina's suggestion to say "brackets and braces" even though its only a very small change.
from problem-specifications.
Thanks for helping clarify.
from problem-specifications.
Related Issues (20)
- Matching brackets - unclear wording HOT 4
- Introduction text for “Bottle Song” contains incorrect phrasing: "One green bottles" HOT 10
- grains: test `description` values contain "raises an exception" HOT 4
- secret-handshake: "commands" `property` doesn't seem to fit its theme/story HOT 1
- Use consistent writting styles for Special blocks HOT 2
- ci: should use shellcheck
- fetch-configlet: script is outdated
- fetch-configlet: consider removing scripts from this repo
- saddle-points: directions seem mixed up
- ci: workflow doesn't run on push
- scale-generator: Accepted solution for "octatonic" scale seems incorrect. HOT 1
- Yarn lock has security issues HOT 12
- Can there be negative Armstrong numbers? HOT 1
- Set up prettier for markdown files HOT 8
- `rational-numbers` missing test cases for "exponentiation of a given rational number to a real (floating-point) power" HOT 1
- "Hello World" description: is "so that it produces the string" misleading? HOT 2
- pig latin in C track HOT 2
- Exercise asks developer to write a function HOT 10
- Saddle Points: geq & leq HOT 2
- Variability of expected output in errors in Hamming exercise 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 problem-specifications.