Actually, it's not crazy. It's just that all the discontinuous linear functions live in infinite-dimensional spaces.
-Take, say, the space C<sup>1</sup>(ℝ) of continuously differentiable functions ℝ → ℝ with the uniform norm. (The uniform norm means that the "size" of a function for the purposes of continuity is the least upper bound of its absolute value.) If you think of a vector in the _n_-dimensional ℝ<sup>_n_</sup> as a function from {1...n} to ℝ, then you can see why a function from a continuous (not even countable) domain would be infinite-dimensional.
+Take, say, the space C<sup>1</sup>([a,b]) of continuously differentiable functions from a closed interval [a,b] to ℝ with the uniform norm. (The uniform norm means that the "size" of a function for the purposes of continuity is the least upper bound of its absolute value.) If you think of a vector in the _n_-dimensional ℝ<sup>_n_</sup> as a function from {1...n} to ℝ, then you can see why a function from a continuous (not even countable) domain would be infinite-dimensional.
-Consider the sequence of functions (_f_<sub>_k_</sub>) = $(\frac{\sin kx}{k})_{k=1}^{\infty}$ in C<sup>1</sup>(ℝ). The sequence converges to the zero function: for any ε, we can take $k := \lceil \frac{1}{\varepsilon} \rceil$ and then $\frac{\sin kx}{k} \le \frac{1}{\lceil \frac{1}{\varepsilon} \rceil} \le \frac{1}{\frac{1}{\varepsilon}} = \varepsilon$.
+Consider the sequence of functions (_f_<sub>_k_</sub>) = $(\frac{\sin kx}{k})_{k=1}^{\infty}$ in C<sup>1</sup>([a,b]). The sequence converges to the zero function: for any ε, we can take $N := \lceil \frac{1}{\varepsilon} \rceil$ and then $\frac{\sin kx}{k} \le \frac{1}{\lceil \frac{1}{\varepsilon} \rceil} \le \frac{1}{\frac{1}{\varepsilon}} = \varepsilon$.
-Now consider that the sequence of derivatives is $(\frac{k \cos kx}{k})_{k=1}^{\infty} = (\cos kx)_{k=1}^{\infty}$, which doesn't converge. But the function D: C<sup>1</sup>(ℝ) → C<sup>0</sup>(ℝ) that maps a function to its derivative is linear. (We have additivity because the derivative of a sum is the sum of the derivatives, and we have homogeneity because you can "pull out" a constant factor from the derivative.)
+Now consider that the sequence of derivatives is $(\frac{k \cos kx}{k})_{k=1}^{\infty} = (\cos kx)_{k=1}^{\infty}$, which doesn't converge. But the function D: C<sup>1</sup>([a,b]) → C<sup>0</sup>([a,b]) that maps a function to its derivative is linear. (We have additivity because the derivative of a sum is the sum of the derivatives, and we have homogeneity because you can "pull out" a constant factor from the derivative.)
By exhibiting a function _D_ and a sequence (_f_<sub>_k_</sub>) for which (_f_<sub>_k_</sub>) converges but (_D_(_f_<sub>_k_</sub>)) doesn't, we have shown that the derivative mapping _D_ is a discontinuous linear function, because the sequence criterion for continuity is not satisfied. If you know the definitions and can work with the definitions, it's not crazy to believe in such a thing!
-The infinite-dimensionality is key to grasping the ultimate sanity of what would initially have appeared crazy. One way to think about continuity is that a function not having any "jumps" implies that it can't have an "infinitely steep" slope: a small change in the input can't correspond to an arbitrarily large change in the output.
+The infinite-dimensionality is key to grasping the ultimate sanity of what would initially have appeared crazy. One way to think about continuity is that a small change in the input can't correspond to an arbitrarily large change in the output.
Consider a linear transformation _T_ on a finite-dimensional vector space; for simplicity of illustration, suppose it's diagonalizable with eigenbasis {**u⃗**<sub>_j_</sub>} and eigenvalues {λ<sub>_j_</sub>}. Then for input **x⃗** = Σ<sub>_j_</sub> _c_<sub>_j_</sub>**u⃗**<sub>_j_</sub>, we have _T_(**x⃗**) = Σ<sub>_j_</sub> _c_<sub>_j_</sub>λ<sub>_j_</sub>**u⃗**<sub>_j_</sub>: the eigencoördinates of the input get multiplied by the eigenvalues, so the amount that the transformation "stretches" the input is bounded by max<sub>_j_</sub> |λ<sub>_j_</sub>|. The linearity buys us the "no arbitrarily large change in the output" property which is continuity.
In infinite dimensions, linearity doesn't buy that. Consider the function _T_(_x_<sub>1</sub>, _x_<sub>2</sub>, _x_<sub>3</sub>, ...) = (_x_<sub>1</sub>, 2<em>x</em><sub>2</sub>, 3<em>x</em><sub>3</sub>, ...) on sequences finitely many nonzero elements, under the uniform norm. The effect of the transformation on any given dimension is linear and bounded, but there's always another dimension that's getting stretched more. A small change in the input can result in an arbitrarily large change in the output, by making the change sufficiently far in the sequence (where the input is getting stretched more and more).
+
+_(Thanks to Jeffrey Liang and Gurkenglas for corrections to the original version of this post.)_
\ No newline at end of file