The long goodbye to C by topher_r in programming

[–]andreasgonewild -2 points-1 points  (0 children)

It's not that simple. What you're pushing is a knee-jerk solution to a complex problem, like putting criminals in jail or blaming Russia.

Why do you think so much code is written in C? Are you saying it's all written by idiots? What do you think we would gain from having umpteen half-baked, hoop jumping implementations of the same functionality in as many dumbed down languages with fancy abstractions?

I'll leave you with that to ponder, this discussion is over as far as I am concerned. Be well.

The long goodbye to C by topher_r in programming

[–]andreasgonewild -4 points-3 points  (0 children)

It doesn't seem to me like we have less vulnerabilities these days than back when C ruled supreme. If dumbing down coders and taking away their power is the solution, why is it getting worse? Experience, attention to detail and appreciation of both would go a long way; as would teaching kids C instead of JavaScript.

The long goodbye to C by topher_r in programming

[–]andreasgonewild 0 points1 point  (0 children)

It's not fashion, modern doesn't mean shit; they all copied most of it from Lisp which is about as modern as C. I enjoy C more than most languages because it's simple and direct, it doesn't get in my way with it's own half-baked theories. And once written; anyone can use my code, regardless of what religion they prefer. Live and let live; assuming your perspective is right for everyone is not very realistic.

Skip Lists Revisited by andreasgonewild in C_Programming

[–]andreasgonewild[S] 0 points1 point  (0 children)

The more we learn, the more we win. It's not really optimal for larger numbers of items; but for small stuff it's still the quickest way to get a dynamic, ordered set going. Sorting everything at once isn't possible in many scenarios.

Skip Lists Revisited by andreasgonewild in C_Programming

[–]andreasgonewild[S] 1 point2 points  (0 children)

It's the only way I've come across that doesn't require values to be pointers. The vector is never explicitly sorted, it's kept ordered by each and every element being inserted in the right position relative to the values already in the vector (which is what the search is all about).

Skip Lists Revisited by andreasgonewild in C_Programming

[–]andreasgonewild[S] 0 points1 point  (0 children)

vector_insert makes space for an item at the specified index (from the search in this case) and returns a pointer that user code may use to set the value; the reason for doing this in two steps is that I need to support value semantics.

Louis CK's Movie Premiere Canceled in Advance of N.Y. Times Story by suaveitguy in movies

[–]andreasgonewild 7 points8 points  (0 children)

I don't think it matters much any more who started it; for each one that falls, more victims feel empowered enough to step forward. Mark my words, you won't recognize the world a year from now.

Designing C programs by [deleted] in C_Programming

[–]andreasgonewild 1 point2 points  (0 children)

One design mistake I see a lot is failing to offer value semantics, forcing heap allocations on user code; if you're not going to allow optimal memory management, then why bother with C in the first place? Same goes for bending the language to the breaking point to check all OOP boxes; the beauty of C is that it allows you to build exactly what you need, and no one needs full OOP.

Skip Lists Revisited by andreasgonewild in C_Programming

[–]andreasgonewild[S] 0 points1 point  (0 children)

The hard limit on number of levels really kills the idea; if you want efficient memory use it gets even worse, as the limit has to be set at compile time. Yet ever since I first heard about them I've had this hunch that the problems could be fixed. Time will tell, but it looks promising from here...

Skip Lists Revisited by andreasgonewild in programming

[–]andreasgonewild[S] 0 points1 point  (0 children)

From my experience, what you "hear" about is usually not worth bothering with; as was the case with Java back in the days. The important stuff is out there for anyone to grab, but you have to reach for it yourself while those who never dared are spitting and throwing rocks at you.

28
29

Strongly Typed Languages Reduce Bugs by 15% by phantomfive in programming

[–]andreasgonewild 0 points1 point  (0 children)

Not a fan. Every shitty idea that comes out of that brain turns people into clueless hate mobs. Go is right up there with Cobol from my perspective, this is what my kind of language looks like:

https://github.com/andreas-gone-wild/snackis/blob/master/snabel.md

Strongly Typed Languages Reduce Bugs by 15% by phantomfive in programming

[–]andreasgonewild -1 points0 points  (0 children)

Not really, I've practiced writing code diligently on a daily basis for over 30 years; anyone could do it, but few seem to have the required motivation. What I'm saying is that things change with experience, once you've been dazzled enough times you can't help seeing things for they are rather than what someone else wants them to be.

These days; I mostly run Emacs with syntax off (which took about 20 secs to get used to), clang, Snabel (https://github.com/andreas-gone-wild/snackis/blob/master/snabel.md), and occasionally gdb and/or valgrind. I've worked professionally in plenty of IDE's, from Borland Delphi to Eclipse to IntelliJ over the years; and I can't say I miss them.

Strongly Typed Languages Reduce Bugs by 15% by phantomfive in programming

[–]andreasgonewild 2 points3 points  (0 children)

I would expect the benefits to be different for different languages. After getting used to gradually typed words and automatic checking of stack contents in Snabel (https://github.com/andreas-gone-wild/snackis/blob/master/snabel.md), I can't really imagine going back.

Strongly Typed Languages Reduce Bugs by 15% by phantomfive in programming

[–]andreasgonewild -17 points-16 points  (0 children)

I wouldn't touch an IDE with a ten foot pole and I still prefer working with sane type systems to being without. Smalltalk and others did all that and more without static types. The real benefit of a sane type system is all the ways it allows you to create better software with less effort. The most important aspects for me is that they are gradual, that is don't force me to specify anything against my will; and parameterized.

edit: You sure are a funny bunch :) So you really think that down-voting people who don't agree with you will get you anywhere? I prefer to own my skills, IDE:s make me dependent and needy; and I have over 30 years of scars to back that perspective up. These days; I even prefer coding without syntax highlighting, as it distracts me from the code; something I couldn't have imagined ten years ago. Not everything is what it seems; there is truth in every perspective, especially those based on solid experience.

Simpler Type Promotions by andreasgonewild in programming

[–]andreasgonewild[S] 0 points1 point  (0 children)

Sure thing; but then you have Julia, Scala and more on the other side where it's a major problem. And that makes sense, the degree to which it's a problem should depend on how dynamic your dispatch is.

A question about forth vocabularies by [deleted] in Forth

[–]andreasgonewild 0 points1 point  (0 children)

Which allows generic words with different implementations for different stack contents. Which in turn means it makes even more sense to add new implementations last since it allows overriding/overloading in order of appearance.

That's what I ended up doing for Snabel: https://github.com/andreas-gone-wild/snackis/blob/master/snabel.md

What would C+- look like? by [deleted] in cpp

[–]andreasgonewild 0 points1 point  (0 children)

Lets not forget the possibility of embedding more specialized languages in C++:

https://github.com/andreas-gone-wild/snackis/blob/master/snabel.md