Vanquish Forever These Bugs That Blasted Your Kingdom
Dmitry Olshansky
dmitry.olsh at gmail.com
Mon Feb 12 06:28:15 UTC 2018
On Sunday, 11 February 2018 at 15:11:55 UTC, psychoticRabbit
wrote:
> On Wednesday, 7 February 2018 at 20:30:54 UTC, Dmitry Olshansky
> wrote:
>> Other languages like Rust or C# (or Java) have bounds check.
>> Plus we probably lose it in release mode, which is the mode
>> where lurking bugs are discovered usually days after
>> development ;) Some of these languages would prevent it on the
>> VM level/compiler level, leaving no way to shoot yourself in
>> the foot.
>>
>
> We all really need to get away from this idea that *we* should
> stop *others* from shooting themselves in the foot. People are
> free to do it, if they want. Who has the right to take that
> choice away from me?
Your customers if you have any. Brcause they is inevitably you
one day.
>
> So let's NOT be like those other languages that just want to
> control what you do.
Then pick assembly of sorts.
C ABI is a stright-jacket that ensures e.g. that your callstack
is laid out correctly so that a ‘ret’ will bring you back to the
call site not somewhere else. Do I need to mention libc’s
machinations done “for compatibility”.
Who the fuck were these guys to steal the pleasure of misaligned
stacks and wrong push/pop order? Or register save missed?
The reality is we are programming on top of increasingly complex
run-times that solve low-level problems to certain extents. That
includes C (even w/o libc) and pretty much any other high-level
language.
>
> -boundscheck=off
>
> D rocks!
More information about the Digitalmars-d-announce
mailing list