9 ms·
This is the first time I've heard of Nimrod and being an amateur C user these are the parts I don't like: - No curly braces around anything. - Whitespace seem
by J_Darnley 12y ago
This is the first time I've heard of Nimrod and being an amateur C user these are the parts I don't like:
- No curly braces around anything.
- Whitespace seems to be important, just like python.
- Some nonsense about unsigned integers.
The best thing I saw was that it has C's explicit-size integers. The one thing I wish every C program would use rather than having configure guess which basic type it should use.
- idlewan 12y ago- No curly braces around anything. - Whitespace seems to be important, just like python. That might be a 'bug' for you, but that's a feature for most. At least for Python, Yaml, Coffeescript, Jade, Stylus and Nimrod users :)
- SeanDav 12y agoA "C" type programming language with no curly brackets (or equivalent) and significant whitespace is a huge negative for me and utter deal breaker. This is the first time I have heard about Nimrod and was very interested to see more. It was all looking so good until I came to this part. Literally I stopped browsing the Nimrod site and closed it down (with some regret) as soon as I saw this. Not interested anymore.
- jessaustin 12y agoDoes this strong preference come from any particular experience? E.g., has Python's significant whitespace caused persistent errors on a project?
- deckiedan 12y agoFrom Python-land, if you find that no brackets are meaning it's hard to tell where conditionals & functions end, it's usually a good sign that you're logic is getting too nested. Yes, it's a pain to work with massively nested logic, but it's actually python's way of saying, "dude! keep your functions small and simple!", which I've come to appreciate. It's one of the things I like about python, actually, is that it really tries hard to encourage you to write good code. Once things start looking ugly and hard to understand, it usually means that the logic & method you're trying to implement isn't a great choice.
- dscrd 12y agoIt makes copy/paste programming so much more difficult...
- mamcx 12y agoNot interested? The C brackets stuff is a mess: http://www.slate.com/articles/technology/bitwise/2014/02/apple_security_bug_a_critical_flaw_was_extraordinarily_simple.html http://www.slate.com/articles/technology/bitwise/2014/02/app... (The error above is not only about the gotos) Is inconsistent. Cause bugs. Can be write like brackets don't exist (http://www.andromeda.com/people/ddyer/topten.html http://www.andromeda.com/people/ddyer/topten.html), nullify your argument. Pick the above link and count how much problems are masked with the illusion of the brackets. Is unnecessary (add noise just to help the parser), and python, haskell and other languages show that could be done better.
- andreasvc 12y agoDo you realize how close-minded you sound? This is purely a bikeshed issue.
- pjzedalis 12y agoCorrection: He sounds close-bracketed.
- Dewie 12y ago> - No curly braces around anything. Do you find curly braces to have some aesthetic? That you like to see it in code for its own sake?
- mahkoh 12y agoYesterday I reported a bug which had already been fixed several weeks ago but reappeared in a new version. After looking through the original patch and the current version, I found that the bug was caused by significant indentation. The maintainer had decided to add comments and accidentally indented the code one more level, making it part of an if branch. Braces would have prevented this.
- deleted 12y ago[deleted]
- J_Darnley 12y agoNot the curly brace itself but I find it a good marker for a block of code. Something should mark the start and end of a loop or conditional. Bash has esac, fi, and done, for example.
- Nursie 12y agoI've been trying to get my team to think more about which 8nteger type they use, the range of values, portability etc etc. The C99 stdint types really should be second nature to C developers, it always surprises me how many just haven't heard of them.