News for hackers. Stuff that matters.
Re:Solid Relevance by he0001 on Monday October 19, 2020 @01:09PM (#24828427)
Curious, what new has been found?
Re:Solid Relevance by Silhouette on Monday October 19, 2020 @01:47PM (#24828825)
I'd say one of the biggest trends in the industry in recent times has been away from mutability -- and with it ubiquitous assignment and the kind of stateful everything environment that OOP tends to foster -- and towards much more controlled state management, often immutability by default, and generally a more declarative programming style.

I think the emphasis on traditional structural programming is also a very dated view. I mean, sure, at machine code level, you're ultimately doing sequences and conditional jumps one way or another, and most imperative languages do still provide general sequence, selection and iteration structures. But in the mainstream languages, numerous other control structures from exceptions to pattern matching on algebraic data types are in fairly widespread use, and tools like concurrency, asynchronicity and using higher order functions are also widely relevant.

Re:Solid Relevance by nendroid on Monday October 19, 2020 @01:32PM (#24828668)
There's a style of programming with no concept of loops or jumps. It's called functional programming. There's other styles that are drastically different as well.

Most of these styles aren't new though.

Re:Solid Relevance by commandlinefan on Monday October 19, 2020 @01:43PM (#24828778)
Well, at the risk of being pedantic, I think you're being pedantic: at the machine-code level, all those function calls resolve to jumps and their recursive base-cases are terminating cases of loops. Functional programming is a great way of organizing loops and jumps, but they're still loops and jumps.
Re:Solid Relevance by lerptime on Monday October 19, 2020 @02:07PM (#24829046)
He's not talking about machine level code. He's talking about while loops in regular programming. I don't think the person was aware that there are paradigms that avoid looping.

To be more pedantic and get even lower level than machine code, at the theoretical level the basis of computation can be either procedural or functional. See lambda calculus and Turing machine for more info.

Re:Solid Relevance by buzzerbetrayed on Monday October 19, 2020 @02:53PM (#24829601)
You don't think Uncle Bob knows there are paradigms that avoid looping? Sorry, but that is absurd. This isn't some random internet blogger. Uncle Bob has proven himself knowledgable enough to know something as basic as that, even if he is a controversial figure.

And please let me know if "the person" refers to someone else. I've read the comment chain all the way up and can only make sense of what you said if "the person" == Uncle Bob.

Re:Solid Relevance by lerptime on Monday October 19, 2020 @03:06PM (#24829714)
I don't know about uncle bob. But certainly what he said is untrue. Programming doesn't even have "while loops" as a primitive. From that wrong statement I assume uncle bob doesn't know much.

Of course I could be wrong. I don't know the guy. But that statement alone is enough for me to make a negative judgement against him.

Re:Solid Relevance by commandlinefan on Monday October 19, 2020 @05:02PM (#24830993)
Well, all electronic computers all the way back to the Mark II have had unconditional branches (jumps) and conditional branches: I guess you're strictly correct that "while loops" aren't technically primitives, but conditional branches are and the only reason you'd ever use one is to perform the equivalent of an if or a while.
Re:Solid Relevance by ajuc on Monday October 19, 2020 @01:46PM (#24828814)
At the machine code level there's no Iteration just GOTO :)
Re:Solid Relevance by commandlinefan on Monday October 19, 2020 @05:15PM (#24831097)
Well, there's unconditional goto (jmp) and conditional "goto" (branch).
Re:Solid Relevance by lgunsch on Monday October 19, 2020 @05:59PM (#24831507)
Lisp has been around for decades. Wikipedia says 1958, which predates C by many years. It is indeed functional and favors recursion over loops.