Hacker News new | ask | show | jobs
by ssivark 2011 days ago
Taking a step back, mathematics just happens to be our most developed tool/perspective for understanding patterns. So, to the extent that programming languages are concerned with modeling certain patterns in programs or domains or computing devices, at one extreme they might end up looking like (applied) mathematics. I consider category theory to be an exercise in this spirit (and this approach is broadly quite valuable precisely because math is often our best modeling framework for phenomena!)

At the other extreme for detecting patterns is simplistic empirical study of the kind that you allude to. It might be difficult to reproduce or generalize from these datasets, but it's hard to do much better without a better framework to operate in.

In between these two extremes is one of the most interesting threads of PL research, where it is treated as a design problem. For this to be possible, the researcher uses a hunch based on their human intuition of a domain or a problem-solving technique, and then tries to reify it into a programming language to provide it as an affordance to users of that system. It is strongly influenced by the taste of the researcher and the reviewers, and often needs to be iterated on to explore an interesting space.

What is the distribution between these three in academic PL research -- I have no idea. But I have seen many interesting demonstrations of the last kind, especially in conference talks at Strange Loop.