Abstract :
Regular expressions - a notation for regular languages - provide alternation and iteration operators, and can thus be viewed as highly simplified programming languages. Insight into the manipulation of regular expressions will consequently provide insight on the cognition underlying the human-computer interaction of programming. We predicted a relationship between accuracy and completeness, thereby indicating that no tradeoff exists, as one would expect to find in a pattern-matching task. As well, we hypothesised a close relationship between the tasks of pattern application and creation, since analogously to reading and writing, they potentially rely on associated cognitive abilities. Our findings indicate that one´s skills in using regular expressions do not match one´s ability to learn natural language, or to perform pattern matching. However, we do find evidence that the manipulation of regular expressions is similar to the manipulation of Boolean expressions and suggest that the ability to use formal languages, and hence program computers, is thus rooted in the skills associated with rule-based systems such as mathematics.
Keywords :
formal languages; human computer interaction; human factors; pattern matching; programming languages; Boolean expressions; formal languages; human-computer interaction; pattern matching task; programmer cognitive skill; programming languages; regular expressions; regular language; Boolean algebra; Cognition; Computer languages; Computer science; Formal languages; Humans; Natural languages; Pattern matching; Psychology; Writing; cognitive skills; formal language; program comprehension; programming skills; regular expressions; regular languages;