Rhetorical Analysis of "Penrose"

A memo analyzing the rhetorical choices of the paper introducing the Penrose software.
Penrose is of special interest to me as a project that uses programming language theory to devise three orthogonal languages with clear design goals and use cases for each. Furthermore, this technical paper was interesting to analyze because it describes a tool that can aid in creating more approachable technical papers, giving it a meta flair.
This memo and the Penrose paper can be helpful to understand how to write a good technical paper, especially in the domain of computer science. Many technical papers are too technical, too text-heavy, and have poor approachability, making them difficult to read. On the other hand, Penrose's paper is extremely approachable without very much background knowledge; for instance, its consistent use of diagrams, as well as the many other excellent design choices that this memo highlights.


In the field of mathematical writing, it can be quite difficult for mathematicians to create clear and effective diagrams to convey their points. Existing diagramming tools focus on specific mathematical domains and cannot be extended to others or demand low-level graphical programming in which designers must tediously modify coordinates in a system that hardly preserves the original mathematical reasoning. After finding a scarcity of figures in recent mathematical papers, a team of Ph.D. candidates and researchers at Carnegie Mellon University designed Penrose, a tool that allows users to effortlessly produce beautiful diagrams from simple mathematical statements in the hopes of facilitating more mathematical diagrams. They then wrote Penrose: From Mathematical Notation to Beautiful Diagrams to introduce the software to mathematical writers and possible funding sources and convince them that Penrose is the next big step in mathematical diagram design through its usability, accessibility, and wide applicability to a huge number of domains. The paper explains Penrose’s rationale, overarching design principles, and demonstrates its use cases with many examples. However, it is hardly a tutorial, indicating that the authors think Penrose is promising but not ready for widespread use.

As mentioned above, the authors of Penrose and its paper hail from CMU, as indicated right at the top of the paper; this alone establishes a significant level of credibility. Beyond that, a quick Google search and skimming the document’s citations reveal that many of the authors have established research careers, including in the research space surrounding Penrose. This is an easy way to utilize ethos to build credibility—simply by referring to past experience. On top of this, the clean formatting of the paper, its many figures, and the intelligent analysis the authors provide about mathematical writing and related topics and how their work fits into it significantly boost their credibility. Given the meta nature of their paper (a paper about a tool that helps in writing papers), if they could not produce a strong technical paper with useful diagrams and understand the many facets of mathematical writing, it would destroy all of their credibility.

This additionally serves well to connect the authors to their audience and highlight their similarities. Many readers will be researchers in mathematics and computer science, so seeing that the paper is written by clearly successful researchers in the same field establishes an important bondI. They will want to see that Penrose is practical for their use cases and can supplant their existing tools, if any. The portion of the audience interested in funding Penrose adds to these desires with higher level ones; they want to see how Penrose can progress the overall quality of future mathematics research. Through their explanation of why they developed Penrose, the authors demonstrate that they too share this interest and may be deserving of additional funding. Most of the audience should have prior experience in mathematical writing, but the authors do well to summarize the various experience levels of these writers, the different mathematical fields they may focus on and how Penrose can suit each of them, what diagramming tools are already available and their strengths and shortcomings, and how creating diagrams with Penrose benefits not just the diagrammer but ultimately whoever reads the diagrams. Some audience members will not be programmers, so reflecting on the extremely technical nature of existing tools and highlighting how Penrose is much simpler for technical novices is an excellent move.

Document design and layout is always an essential consideration. This paper is a mathematical technical paper, which carries with it many expectations for the format and content, including typesetting with LaTeX, numerous figures and equations, an abstract, an introduction, a body with at least some kind of explanation of the authors’ methods, a conclusion that details possible future avenues for the work, and finally a references list that citations throughout the paper refer to. Some of these conventions would be off-putting in other fields, but in technical papers in STEM fields, they are essential. The authors of Penrose’s paper command this knowledge excellently; as mentioned earlier, it would be an ironic blow to their credibility if they could not. In their paper, there is an abstract and an introduction to explain Penrose’s rationale and design goals, a few sections to explain the design of its components and the user-facing programming languages that drive them, a section with plenty of examples of applying the tool to different mathematical domains, and a conclusion that makes several suggestions for enhancing the tool, such as by improving its efficiency and the fidelity of the diagrams it can produce. Littered throughout the paper are diagrams generated using the tool, furthering the authors’ purpose of demonstrating how effective Penrose diagrams can be. The two-column layout, color screens, and sparing use of certain fonts for different content types, such as code fragments, produce an excellent document that helps readers chunk the information into cohesive sections. Overall, creating a beautiful paper that adheres to standard expectations for mathematical technical papers was clearly a core concern for the Penrose authors.

The last, but potentially most important consideration is the paper’s core content and how it is expressed. This includes the work’s word choice and overall tone, which information is essential to include for the target audience, and finally how to utilize all of this effectively through Aristotle’s appeals of ethos, pathos, and logos. Overall, the paper is not excessively technical; the section titled “Layout engine”, which describes how Penrose generates its diagrams, is frankly the only complicated section. That being said, a Calculus I-level background is enough to understand most of it without too much difficulty and it is reasonable to assume that the mathematically-inclined audience can grasp it. Some light technical jargon is sprinkled elsewhere but by and large, it is an easy read; the technical parts can even be ignored and the main points about Penrose’s accessibility and extensibility still get across. That is not to say that anything is dumbed down, but the paper is relatively prerequisite-free, compared to some other computer science and mathematics papers. It is clearly focused on introducing the tool, so there is no need to write expansive details about the tool’s inner workings; a theoretical overview to convince readers that the tool works and can be stretched in new directions is enough. Referring back to Aristotle’s appeals, I’ve already elaborated upon the usage of ethos through the authors’ established research careers. As for pathos, there is little of this throughout the paper, and for good reason; a STEM paper ought not to depend too heavily on passion or emotion when it can instead depend on credibility and facts to make arguments certain and factual. Arguably the great capabilities of Penrose that the authors demonstrate may bring wonderment into the hearts of the readers, but the language is hardly strong enough to warrant labeling it as pathos. Onto logos, there is plenty of this! For one, the authors very clearly demonstrate Penrose’s prowess by including diagrams that it generates, dogfooding their tool as it’s referred to in the industry. Many of the diagrams cross different mathematical fields, which accomplishes the authors’ goal of demonstrating that Penrose is helpful to mathematicians across the spectrum. Furthermore, the authors include graphs towards the end to evaluate the performance of their tool (complexity of diagram code versus time to generate) and clearly show that it is perfectly usable. They do not shy away from detailing some of the generation times can be excessive, but highlight this as a workable problem for the future.

Though this is a good document, I would refrain from calling it perfect. Depending on who you ask, anything can benefit from certain revisions. I would suggest the authors include a section explaining to readers how they can utilize the tool and get involved. While this is not necessarily typical for a paper in the computer science space, it is overwhelmingly common in the space of free and open-source software, which Penrose belongs to. The open-source community generally encourages users to explore software to their heart’s content and contribute their changes back, thereby improving the software for all users as a result. Plenty of well-funded research projects benefit from open-source contributions, so it would not be inappropriate for Penrose’s development. In the context of a written document, this would also provide a clear call to action to audience members.

Overall, Penrose: From Mathematical Notation to Beautiful Diagrams is a well-written technical paper that takes audience members through a tour of Penrose and its document generation capabilities. The authors clearly understood their rhetorical situation and how best to take advantage of that. This includes elements such as catering to their audience of mathematicians and funding sources by demonstrating Penrose’s promise with audience-appropriate language, examples, and depth of information. The information is not excessively technical, but the information that is technical is written in an easy to read manner and there are references to additional resources and topics should readers be interested. In writing their arguments, the writers focus on ethos and logos, which is common for the STEM field, rather than pathos, which generally cannot be substantiated. Furthermore, the authors excellently wielded their own established credibility from their prior research experiences while adding to it by creating a well-formatted technical document filled with figures to show off their tool’s capabilities. On that note, the document has excellent LaTeX formatting in line with genre expectations, further aiding the authors’ credibility in the domain of mathematical writing. Finally, it is important to note that every document can still benefit from revisions; in this case, instructions to the audience on how to use Penrose and get involved in its development would have been an excellent addition. This paper serves as an excellent example of multidisciplinary technical writing that crosses boundaries into research, mathematics, technical writing, diagram design, and open-source software development and should be used as a reference by writers in any of these fields.

Works Cited

Katherine Ye, Wode Ni, Max Krieger, Dor Ma’ayan, Jenna Wise, Jonathan Aldrich, Joshua Sunshine, and Keenan Crane. 2020. Penrose: From Mathematical Notation to Beautiful Diagrams. ACM Trans. Graph. 39, 4, Article 144 (July 2020), 16 pages. https://doi.org/10.1145/3386569.3392375