-
-
Notifications
You must be signed in to change notification settings - Fork 14
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
Question: Should we change our stubs policy? #112
Comments
In List-Ops, if I comment out the static
In the case where I comment out the whole class, then it's the import that fails
Similarly, if I rename the solution file, import fails
I don't know if I would characterize that as "compile-time": to me it just fails before Testie starts testing. It's a shame that we get "Could not find a variable named 'ListOps' in module './list-ops'." for both missing file and missing class. |
Ah, you may be right (since import errors can be captured at runtime)... but I think it depends on the nuance of what we mean by compile time... if we're just talking about whether ANY code has run yet, they yes... top-level code that's defined in
Please file that as a bug/issue against For Exercism though is that a common issue - or you're debating perhaps in some cases NOT even giving someone a stub file at all? |
I think we need something in between. I like the way Java does it: once an exercise gets to a certain difficulty, make the student implement everything -- no stubs. That would mean we'd need to reconsider the difficulties and ordering of wren exercises. re: boilerplate comments: I added a check in the bash analyzer that will warn if they're still there. |
Not opposed but I really really really hate stub comments - students never remove them in my experience - that's why none of the Wren files have a stub comment (except for the very first exercise)... I wonder if we made it part code if that would help: class DeleteMeWriteYourOwn {
/*
Since this exercise has a difficulty of > 4 it doesn't come
with any starter implementation.
This is so that you get to practice creating classes and methods
which is an important part of programming in Java.
Please remove this dummy class and then start writing your solution
*/
} |
Or are you really opposed to just include the |
No, that would be great. I'd say we could do that for any exercise with difficulty > 2. |
My thoughts then:
Does that sound like a plan? |
Yes, easiest first. I kind of have, in the Tcl and bash tracks. Probably not too difficult to take the average difficulties from some other tracks: a bit of |
Pulling this out incase it requires further discussion. Didn't want it to get lost.
The first example (just new) only works [well] in this case because ALL tests start with a call to the
new
method... if there were other static methods and those did not exist... then they would need to exist or you get a hard error.The second example - the hard error (Wren Console can't compile the script or test suite)... I don't think is super welcoming for students. Would/should it be reasonable for harder exercises? I dunno... I was trying VERY hard not to have any "boiler plate comments" which students never remove and drive me nuts.
Or maybe my first assertion above is wrong - if we went with something like this:
You get a soft runtime error of:
I think static methods may be resolved at compile-time though?
Originally posted by @joshgoebel in #111 (comment)
The text was updated successfully, but these errors were encountered: