Comments (3)
Enabling strict mode everywhere is not as simple as it looks, since NodeJS apparently doesn't honour the --use-strict
flag (see nodejs/node#30039). It also became clear that the NodeJS people aren't a big fan of the flag.
A more robust way to enforce strict mode would then be to add "use strict"
to every submission, but that is more work, although we do have support for this kind of thing.
A check of all the latest submissions from "Scriptingtalen" didn't reveal any instance where enabling strict mode changed the result.
from universal-judge.
It seems like Node (and Chrome) don't enforce strict mode in this case, even though they should.
For example, the following code violates strict mode:
class Example {
static test = {
00: '',
05: 'VIJF NA',
10: 'TIEN NA'
};
}
However, both node --check
and the Chrome console accept it without issue:
However, most libraries do not accept it, and neither does Firefox:
Some solutions could be:
- Enable strict mode everywhere.
- Use an alternative to
node --check
that does check it - Somehow propagate errors from a later step inside TESTed
That last one is annoying, since that step shouldn't fail (so if it does, it should be an internal error instead).
from universal-judge.
FYI: Here's an example of a submission where the student enabled strict mode himself.
from universal-judge.
Related Issues (20)
- Fetch stdin from file as an alternative to inlining it into test suite HOT 1
- Do not quote options on bash command lines generated by TESTed
- Support tests for files
- Generate "final" variables if possible
- Show stdin as a separate channel when used in combination with arguments HOT 2
- Closing newline insertion HOT 1
- Specify interface that must be implemented
- Link bash compilation error to corresponding line in code
- Support before/after in DSL
- Support attribute assignment
- Testing stdin/stdout and expressions at the same time? HOT 3
- Update node.js to latest version HOT 3
- JavaScript: consider alternative ways to create object as alternatives HOT 1
- Bug with Javascript objects
- representation of Set and Map as return value HOT 3
- Add some extra tests for the set/map type restrictions
- Bump JavaScript exercises repo commit in tests
- Dodona features for language-agnostic exercices
- Measure/estimate complexity (time and memory) HOT 2
- Testing usage of specific keywords?
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 universal-judge.