Pipes have been a fundamental aspect of computer programming for many decades. In short, the semantics of pipes can be thought of as taking the output from the left-hand side and passing it as input to the right-hand side. For example, in a linux shell, you might cat example.txt | sort | uniq
to take the contents of a text file, then sort the rows, then take one copy of each distinct value. |
is a common, but not universal, pipe operator and on U.S. Qwerty keyboards, is found above the RETURN key along with the backslash: \
.
Languages that don’t begin by supporting pipes often eventually implement some version of them. In R, the magrittr package introduced the %>%
infix operator as a pipe operator and is most often pronounced as “then”. For example, “take the mtcars
data.frame, THEN take the head
of it, THEN…” and so on.