diff -r e74c696821a2 -r 010c5a03dca2 handouts/ho01.tex --- a/handouts/ho01.tex Tue Aug 23 23:12:55 2016 +0200 +++ b/handouts/ho01.tex Wed Sep 14 11:02:44 2016 +0100 @@ -27,6 +27,27 @@ %% reasons for a new prgramming language %% http://beautifulracket.com +%regher +% We can start off with a couple of observations about the role of +% compilers. First, hardware is getting weirder rather than getting +% clocked faster: almost all processors are multicores and it looks +% like there is increasing asymmetry in resources across +% cores. Processors come with vector units, crypto accelerators, bit +% twiddling instructions, and lots of features to make virtualization +% and concurrency work. We have DSPs, GPUs, big.little, and Xeon +% Phi. This is only scratching the surface. Second, we’re getting +% tired of low-level languages and their associated security +% disasters, we want to write new code, to whatever extent possible, +% in safer, higher-level languages. Compilers are caught right in the +% middle of these opposing trends: one of their main jobs is to help +% bridge the large and growing gap between increasingly high-level +% languages and increasingly wacky platforms. It’s effectively a +% perpetual employment act for solid compiler hackers. + +% compiler explorer +% https://gcc.godbolt.org + + \begin{document} \fnote{\copyright{} Christian Urban, King's College London, 2014, 2015, 2016}