DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM any real-world computation can be translated into an equivalent computation involving a Turing machine. CHURCH-TURING THESIS
DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM int main() { int t0 = 3; int v0 = addthem(1, 2); return v0 + t0; } int addthem(int a0, int a1){ int t0 = a0 + a1; return t0; }
DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM function recurse() { recurse(); } recurse(); RangeError: Maximum call stack size exceeded.
+ DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM BLUB PARADOX “Some programming languages are more powerful than others… I look at [Python, Java, C and Perl]. How can you get anything done in them, I think, without macros?” Paul Graham http://www.paulgraham.com/avg.html
+ DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM BLUB PARADOX “They're satisfied with whatever language they happen to use, because it dictates the way they think about programs.” Paul Graham http://www.paulgraham.com/avg.html
DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM Combination of words in common use that have a figurative, and sometimes literal, meaning
DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM In this case, it was routed straight to the Director of Central Intelligence and, because it evidently discussed the identity of a field spook, to the Deputy Director (Operations), since all the field spooks worked for her. The former was a busier person than the latter, but that didn’t matter, since the latter was married to the former Tom Clancy, Rainbow Six
DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM What beliefs or what wrong could motivate a man to do murder on a large scale? In the former case, Brightling was not a religious fanatic. In the latter, he had no overt dissatisfaction with his country. Tom Clancy, Rainbow Six
DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM His last through before closing his eyes on this sunny morning was that he hoped the contact number hadn’t been changed, or compromised. If the latter, then he’d have to do some explaining to the local police… Tom Clancy, Rainbow Six
DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM Yes, this could and would work. The only question was daylight or nighttime. The latter was the usual answer, but he’d learned the hard way that counter-terror teams loved the night… Tom Clancy, Rainbow Six
DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM “Language and economics.” The former had proven very useful. The latter had been totally valueless, since the Marxist idea of economics had not exactly proven to be an effective one. Tom Clancy, Rainbow Six
DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM Means of expressing a recurring construct or abstract idea, often across multiple languages
DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM def my_enumerate(iterable): i = 0 for item in iterable: yield i, item i += 1 for i, line in my_enumerate(text.split("\n")): print "#{0} {1}".format(i, line)
+ DANIEL COUSINEAU // FOLLOW ME : @DCOUSINEAU OR HTTP://DCOUSINEAU.COM THE TAKEAWAY Other languages make certain ABSTRACT concepts easier to learn By making it easier to use said concept than not use it in a way that your current language does not