Comment Re:Despite being called a macbook (Score 2) 61
Why did you not read the summary? It would have saved you the time to write this nonsense.
Why did you not read the summary? It would have saved you the time to write this nonsense.
Well,
That "harsh definition" collapses when the "unsafe" code has no bugs.
The point is that the safe code is guaranteed to not have certain kinds of bugs.
So, we have either 10,000 unsafe lines of C, or 9995 safe lines if XYZ, and 5 lines where the XYZ code has to access real physical memory by using real physical memory addresses.
And that would usually be the "registers" of the memory mapped device for which it is the driver.
Yeah, Free Pascal is alive and kicking. Runs even on mobile and Arduino etc.
Ada is a niche language.
And most people never used it, so even the kind of admirers mistake it for a silver bullet, e.g. Ada lacks:
- garbage collections (you need more modern add on's/variations of it)
- object oriented programming got added in Ada95
It's strengths were/is multitasking and precise description of data structures and in that context "bit fiddling".
Of course encapsulation with its package system etc.
It is a "verbose" language. With modern IDEs that should not be a problem, though.
So, one makes a mistake, and you want to blame him?
A pretty low human attitude in my opinion.
You have two different languages and two different compilers, why not pick the one which makes it impossible to make certain kinds of mistakes and pretty hard to make other mistakes?
Then
It would not be any difference if they had used C.
On the other hand if they picked Rust "because of hype", they probably had neglected other languages "because of hate" (or some idiotic flame).
For me personally writing a GUI app - regardless of OS - the first choice would be Java and - yes - Swing.
Second choice would have been to be determined between Qt/C++ and some
Well,
modern C/C++ is full with int8 - int64 or the uint equivalents.
Sometimes I write a typedef. Then my finger is lingering over the return key when I have finished typing "make"
So I ran to my computer and check again: it is still there!!
So when I see this
std::vector<std::string> args;
I think, okay, that is one line
What is so damn complicated in writing a typedef? Especially when all that is not std:: but a bunch of user defined types?
In other words: I do not want to see dozens of variable declarations with variations of uint* - but I want a technical or business name for them.
There's name changes all the time all over the world and the records
No, there aren't.
No idea how you think otherwise.
In Thailand you can change the surname: if both living parents agree - regardless of your age. so you are out of luck if both are dead.
In Germany you can only change your name is your parents gave you an "insulting" name (which surprisingly passed the relevant family court at your baptism) and you can convince a family court to agree with your desire to change the name.
As an example, one of my dad's neigbours family name is "Fittler", if he had named his son Adolf/Adolph his son would have a point to change his first name, but not his family name.
To be able to change your name you need a law that allows it and regulates how it is done. If there is no such law, the change is already basically impossible.
In Germany a special court (the same that registers births and marriages etc.) has to agree to the change, and write note and certificate and so on
It seems like a simple matter of having a field on a piece of paper or in a computer database on any prior name and when the name changed.
And then you inherit a few millions. As no one finds you with your new name, after a grace period, your living siblings get it split amoung them, and suddenly you show up and try to prove it is YOU, the old YOU, with a new name, and they laugh at you, as you have no paper trail showing who you are and when you changed your name (and why).
The USA are an exception for easy changes of names. In the rest of the world only Kings and warlords have that luxury
Well,
the code I push into Git works on my machine
You did not provide links in your post we talked about.
This time you have links.
And the statement in your first link: "More than 90% of its potential energy still remains in the fuel, even after five years of operation in a reactor. is simply wrong.
So the point I give you: you are right, your idiotic DOE actually wrote that nonsense.
Your second link is about a different reactor technology, which is currently not in use.
You have to use unsafe in 5 lines of code.
And the other 10,000 lines do not need it.
What is your complaint with that?
I do not know when you studied. But C originally as designed to be a kind of portable macro assembler.
Basically if you want to bring that analogy/point to the extreme: it did not much more than abstracting away the names of the registers. Or invent on very small machines, like 6502, its on machine abstraction - which did not have much to do with the original processor architecture.
Basically old C compilers only looked at the syntax, if the { and } matched and there was no missing semicolon
Ada on the other hand was Pascal/Modula2 on stereoids. I got my book around 1984, but never did anything in it. I did a bit C in university, and ditched it for C++ instantly. Even on the Macs most people used MPW with C++ instead of Pascal, no real idea why. I guess because it was new, and exciting. Developing in Pascal was bottom line more smooth.
Everybody makes mistakes.
Most of the time he fixes them himself.
Most mistakes are what they are: a mistake.
In other words, they do not write such code because they are stupid, ignorant, uneducated or bad programmers, they write it: because they made a mistake. An oversight.
This particular mistake never happened to me (as far as I remember, but my memory could be faulty).
Then again, some people started to use "if (5 = a) " instead. Which does not compile. But in English and German this code sounds ugly, if you read it aloud. In Java "if (a = 5) " does not compile, as "5" is not true
The Japanese saying is: Even Monkeys fall from Trees.
The point is to have a process that finds and fixes mistakes, before they hit the customer, and backfire onto your self.
The surname thing is a kind of nightmare in IT systems, too.
Considering what you call an IT system, of course. And considering that it would be kind of straight forward to handle, if people would not forget in the early stages of building (and using) the system, that "name changes are an option".
And that is not only due to marriage, but also adoption, or an abusing first name, or change of sex or gender (I keep mixing up what the difference in English is, forgive me), and there are probably a few more. E.g. children got mixed up after birth and found the real parents
So what is the problem in IT? Well, you organize in a federal state how a state employed school teacher is assigned to classes. That school teacher is first of all a real existing person, with a name, birthdate and place of birth. It is also a state employee (in a different database?). He is a teacher in two schools (state employed) - two schools because the lazy bastard is teaching music and sports. And both schools have no place for a close to full time sports and music teacher (but that is only a rand problem). So you schedule the teacher for 12h in one school and 14h in the other, and have to keep book in the "school scheduling software" how you have scheduled him/her - and keep track in the state employment database how many hours that teacher is working.
So, now the teacher is marrying. Bonus points, of s/he does it in school holidays. Bonus points if s/he has informed his employer before the fact - instead of waiting till the next wage pay out and complaining that the name is the old one and not the new one. Bonus points if the guys using the school scheduling software, know it too - in time.
So now you have a school class, that has a music and sports teacher in the first semester, giving grades and a semester certificate under name A, and in the second semester under name B.
Sound simple. Until you realize the IT system only allows to have "the one and only person" in its IT system. And either has to create a new teacher with a new name
And so on
Of course the IT system I talk about was unfixable. So they had to do work arounds, after all: only half the teachers marry eventually, the others are already married. With only 40,000 teachers employed by the federal state, that is not a big deal
Oh, the build system for the software was a half defunct ant script. You could not call a "random target" to build it, as the guys who wrote it, did not understand the dependency idea of ant tasks.
On top of that, they assumed you can build it with click - click - click in Eclipse
Finally: they did not consider the build system as part of the source code. Which they had agreed to deliver to the customer (the federal state). As this pile of shit had all its hours - where some one worked on it - tracked in an issue tracker, they considered it an asset worth 40k EURO (or something in that ball mark) and wanted to sell it for twice the price to the state government. Which surprise surprise: did not have a budget for that.
An ant script like that, you need a day to write. Perhaps if you want to be super perfect: two days. Make that 3k if you want. And that is it. And: it is part of the source. Trying to sell it extra is kind of nitpicking, and dishonest, imho.
Anyway, they circumvented half of their surname problems: by duplicating the teacher for every semester. So they only have to fix the names in the new semesters, and for older ones, the old "database record" is used.
The subline of
News for Nerds, stuff that matters.
If marriage laws do not matter for you, move on.
If you are not a Japan nerd, move on (give me your Tamagotchi first, please).
Friction is a drag.