Doing the type checking increases the minimum cost of evaluating a block of code. For instance consider this simple function.
function int_id(x: int): int {
return x;
}
If this code is executed with no run time checks then the body will do no work and return x. However if we are forced to perform run time type checks to enforce soundness then the body will look something like.
function int_id(x: int): int {
assert(x is int);
return x;
}
> How about not assuming racism in the first place?
Except there is clear evidence that unconscious bias exist. To test your own you can try some of the tests as part of ProjectImplicit (https://implicit.harvard.edu/implicit/) Pretending it does not exist is not really helpful advice.
As a black alum from MIT and feel I can speak to this anecdotally. Here are some distinction to keep in mind.
1) From the moment I stepped onto MIT's campus I was actively recruited by Silicon Valley companies. My freshman year was tough getting much attention, but recruiters would talk to me and generally gave off the vibe that I was wanted. Contrast this with going to a HBCU where these companies are not present on campus, or if they do show up its only for a day or two for a career fair. You wouldn't feel as welcome coming there.
2) I had black friends who were upperclassman who had "made it" in SV. They could offer advice and guidance. When I moved out to SV I also had them as part of social circle so I had social ties outside of work. Coming from a HBCU its likely you do not know anyone who works at these companies. You also do not know anyone who lives in the area to socialize this. If you do not relate to the people from work then you have trouble making friends.
What makes you feel that she is making this judgement based on skin color? From my reading it sounds like she tried going to lunch with her coworkers and the conversations that naturally came up were not of interest to her.
Cry me a river. Honestly, you're not going to share interests with everyone.
I'm a white guy. If I go to lunch with a bunch of manager or sales guys, and they start talking about sports, I'm going to have exact same problem. I don't give two shits about sports, and I think spectator sports are incredibly stupid. So if I find myself in a group of sports fans, then I'm also going to feel that I don't have much in common with these people. Does that mean they're a bunch of racists? Obviously not; we simply don't share the same culture. If the conversation shifts to technology, or sci-fi, or Game of Thrones (a lot of people are into that these days), etc., then I'll be able to join in, but if the sports fans aren't into talking about that stuff over lunch, then I'm out of luck. I'm not going to whine much about it, except maybe for making some snide remarks about how stupid sports fans are, but I'm certainly not going to go on a crusade about it.
Luckily, I usually get along pretty well with coworkers this way, but I guess engineers tend not to be sports fanatics as much as the general population. But I certainly have found myself in situations with groups of people with very different interests than myself. I didn't make a big deal out of it; I know that my interests are a little more narrow and that I eschew many things that regular people like (sports, popular TV shows aside from GoT), so I try to find people I do share interests with.
function int_id(x: int): int { return x; }
If this code is executed with no run time checks then the body will do no work and return x. However if we are forced to perform run time type checks to enforce soundness then the body will look something like.
function int_id(x: int): int { assert(x is int); return x; }