"For safety, Swift requires the variables to be initialized before being passed with &. This is because it cannot know whether the method being called tries to read from a pointer before writing to it."
I've not written any Swift code yet, so can someone enlighten me -- is this actually true? This seems unnecessarily restrictive (and absurd -- Swift can't tell if a pointer's being read?)
If the source to the method being called is not available, then it's certainly possible for the compiler not to be able to tell how a pointer passed to that method might be used.
In the case of an optional it can be initialised to nil (and it will be implicitly).
Swift can tell from static analysis if it might be read at compile time and raise an issue if it isn't initialised on all oaths to the access. If passed as an inout parameter it has to assume it may be read[0] and for safety require that it must be initialised.
[0] at least if it is calling into a library even if it can check the current version it couldn't know for sure that a different library version won't behave differently.
I'm very confused about the purpose of this. If it's just taking advantage of the Translate API so you don't have to use the browser app, I can see the convenience of being able to, say, write a local script without having to munge through API docs and get a Google account and so on. However, I'm confused about it being branded as a language learning tool...
Check out the zsh git hook described in the docs. Every time you do a commit you can see and hear its message translated to the language that you would like to learn. I find it useful when learning french now since I do dozens of commits every day.
See, my problem with this idea is the inaccuracy of Google Translate's translations. For Romance languages, the results are questionable enough (I'm also learning French at the moment, and anything more than simple sentences can be hit-or-miss); for non-Romance languages, the sentences are just hilariously bad. A sentence as simple as "Hey, cowboy where is your horse?" is translated into Chinese as the slightly mangled 嘿,牛仔是你的马在哪里? according to the project's README. (To non-readers of Chinese, that 是 should be replaced by a comma.)
(As an aside, I got the strangely reordered and even more ungrammatical "哎牛仔哪里是你的马?" when I tested it myself in-browser. Talk about unreliable.)
The mechanical efficiency of the the mass killings, for one, is fairly unique. Also, the stories of the Holocaust are more widely heard because many of the people that were alive when it happened are still alive today. Genocide is genocide, but if the victims are alive to tell their stories it gives a particular event more focus. And finally, the fact that we were inundated with propaganda prior to entering in conflict against the Germans solidified the war in out collective conscience as "the US coming in to save the persecuted Jews."
I mean, one could make the same arguments about other genocidal leaders. Why isn't Mao in out textbooks? What about Pol Pot? Well, we didn't have the same level of propaganda regarding those leaders, and there aren't as many survivors that tell their stories in the U.S.
But let me give you an example. Here in Brazil we had our own kind of holocaust. Very mechanical, and very cruel. But it was only last year that I have found out about it. From a documentary made about it's victims (one that is still alive today).
In contrast, I spent a lot of time in school learning about the holocaust. I watched a dozen movies about it. And I have lost count of the books I've read about it.
It was a cruelty beyond belief. But there are more recent genocides that don't get even a fraction of the attention. And why don't we learn about them?
Why the holocaust is treated as the worst human genocide in history when it clearly is not?
Even in our own (Brazilian) history there are genocides made by the empire that are very close to the mechanical cruelty of the holocaust. And we don't even learn about them on school. Why?
-------------------------------------
Note: I'm not arguing about the importance of learning about holocaust. I'm just saying that we should make room to learn about other mistakes that we made in our history. That's the only way we'll keep from making them again.
In regard to the first tip, I use `git add -i` even more often, because it gives you an interactive prompt that asks you which files you want to add to a commit (i.e. you don't have to type out the whole filename(s) each time).
What I'd like to see is a report of keys I need to work on. Or the game could just emphasize them in challenge rounds. Even after twenty years of touch typing and a hacked keyboard [0], I still have trouble with the 'xcvb' cluster. So yeah, I guess I know my problem area.
Update, it was the 'j' that did me in. I couldn't decide if it was an 'i' or an 'l'. Impact culpa.
Define stable. Do you mean it crashes? or that it drops out once in a while? Because I use Facebook over XMPP and I've never actually experienced any problems.
It dropped a lot when I tried using it, and the "in browser and Adium and a Pidgin" combination was super unstable -- caused it to crash a lot more. It may have improved, but I couldn't get it to stay connected more than 15 minutes. This was about 2 years ago maybe?