skip to main content
research-article
Open access

POP-PL: A Patient-Oriented Prescription Programming Language

Published: 05 July 2018 Publication History

Abstract

A medical prescription is a set of health care instructions that govern the plan of care for an individual patient, which may include orders for drug therapy, diet, clinical assessment, and laboratory testing. Clinicians have long used algorithmic thinking to describe and implement prescriptions but without the benefit of a formal programming language. Instead, medical algorithms are expressed using a natural language patois, flowcharts, or as structured data in an electronic medical record system. The lack of a prescription programming language inhibits expressiveness; results in prescriptions that are difficult to understand, hard to debug, and awkward to reuse; and increases the risk of fatal medical error.
This article reports on the design and evaluation of Patient-Oriented Prescription Programming Language (POP-PL), a domain-specific programming language designed for expressing prescriptions. The language is based around the idea that programs and humans have complementary strengths that, when combined properly, can make for safer, more accurate performance of prescriptions. Use of POP-PL facilitates automation of certain low-level vigilance tasks, freeing up human cognition for abstract thinking, compassion, and human communication.
We implemented this language and evaluated its design attempting to write prescriptions in the new language and evaluated its usability by assessing whether clinicians can understand and modify prescriptions written in the language. We found that some medical prescriptions can be expressed in a formal domain-specific programming language, and we determined that medical professionals can understand and correctly modify programs written in POP-PL. We also discuss opportunities for refining and further developing POP-PL.

References

[1]
Apple Computer, Inc. 1988. Hypercard Script Language Guide: The Hypertalk Language. Addison-Wesley.
[2]
S. M. Belknap, H. Moore, S. A. Lanzotti, P. R. Yarnold, M. Getz, D. L. Deitrick, A. Peterson, J. Akeson, T. Maurer, R. C. Soltysik, G. A. Storm, and I. Brooks. 2008. Application of software design principles and debugging methods to an analgesia prescription reduces risk of severe injury from medical use of opioids. Nature Clin. Pharmacol. Therapeut. 84, 3 (2008), 385--392.
[3]
Steven M. Belknap. 1991. The Chicago Kinetic Simulator. Math. J. 1, 4 (1991), 68--86.
[4]
A. F. Blackwell, C. Britton, A. Cox, T. R. G. Green, C. Curr, G. Kadoda, M. S. Kutar, C. L. Nehaniv, M. Petre, C. Roast, C. Roes, A. Wong, and R. M. Young. 2001. Cognitive Dimensions of Notations: Design Tools for Cognitive Technology. In Proceedings of Cognitive Technology: Instruments of Mind.
[5]
Alan F. Blackwell and Thomas R. G. Green. 2000. A cognitive dimensions questionnaire optimised for users. In Proceedings of the 12th Workshop of the Psychology of Programming Interest Group.
[6]
Frederic Boussinot and Robert De Simone. 1991. The Esterel language. In Proceedings of the Institute of Electrical and Electronics Engineers.
[7]
T. Brus, M. C. J. D. van Eekelen, M. van Leer, and M. J. Plasmeijer. 1987. CLEAN—A language for functional graph rewriting. In Proceedings Conference on Functional Programming Languages and Computer Architecture (FPCA’87), pp. 364--384.
[8]
Chrisian J. Callsen and Gul Agha. 1994. Open heterogeneous computing in ActorSpace. J. Parallel Distrib. Comput. 21 (1994), 289--300.
[9]
Bin Chen, George S. Avrunin, Lori A. Clarke, and Leon J. Osterweil. 2006. Automatic fault tree derivation from Little-JIL process definitions. In Proceedings of the Conference on Software Process Change (SPW’06).
[10]
Carlo Combi, Mauro Gambini, Sara Migliorini, and Roberto Posenato. 2012. Modeling temporal, data-centric medical processes. In Proceedings of the SIGHIT International Health Informatics Symposium. 141--150.
[11]
Committee on Identifying and Preventing Medication Errors. 2007. Preventing Medication Errors: Quality Chasm Series. National Academies Press.
[12]
Maria Cvach. 2012. Monitor alarm fatigue: An integrative review. Biomed. Instrum. Technol. 46, 4 (2012), 268--277.
[13]
Division of Endocrinology, Department of Medicine and Multidisciplinary ICU Committee. 2004. Guideline for Intravenous Insulin Infusion in the Adult ICU Patient. Retrieved from http://www.hospitalmedicine.org/CMDownload.aspx?ContentKey=046c625a-839f-4731-beb8-5149c4c8f9788ContentItemKey=262ad349-0970-45ce-89d7-37de88728c7c.
[14]
R. Filik, K. Purdy, A. Gale, and D. Gerret. 2006. Labeling of medicines and patient safety: Evaluating methods of reducing drug name confusion. Hum. Factors 48, 1 (2006), 39--47.
[15]
Matthew Flatt and PLT. 2010. Reference: Racket. PLT, TR-1. Retrieved from http://racket-lang.org/tr1/.
[16]
George W. Furnas. 2000. Future Design Mindful of the MoRAS. Hum.-Comput. Interact. 15, 2--3 (2000), 205--261.
[17]
David M. Gaba, Mary Maxwell, and Abe DeAnda. 1987. Anesthetic mishaps: Breaking the chain of accident evolution. Anesthesiology 66, 5 (1987), 670--676.
[18]
Tony Garnock-Jones, Sam Tobin-Hochstadt, and Matthias Felleisen. 2014. The network as a language construct. In Proceedings of the European Symposium on Programming (ESOP’14).
[19]
David Gerrett, Alastair G. Gale, Iain T. Darker, Ruth Filik, and Kevin J. Purdy. 2009. Tall Man Lettering: Final report of the use of tall man lettering to minimise selection errors of medicine names in computer prescribing and dispensing systems. Retrieved from http://www.connectingforhealth.nhs.uk/systemsandservices/eprescribing/refdocs/tallman.pdf.
[20]
Adele Goldberg and David Robson. 1983. Smalltalk-80: The Language and Its Implementation. Addison-Wesley Longman Publishing Co., Inc.
[21]
T. R. G. Green and M. Petre. 1996. Usability analysis of visual programming environments: A ‘cognitive dimensions’ framework. J. Vis. Lang. Comput. 7 (1996), 131--174.
[22]
T. R. G. Green and M. Petre. 1992. When Visual Programs are Harder to Read than Textual Programs. In Proceedings of the 6th European Conference on Cognitive Ergonomics, Human-Computer Interaction: Tasks and Organisation.
[23]
Thomas R. G. Green. 1989. Cognitive Dimensions of Notations. People and Computers V. 433--460.
[24]
Yehuda Handelsman, Jeffrey I. Mechanick, Lawrence Blonde, George Grunberger, Zachary T. Bloomgarden, George A. Bray, Samuel Dagogo-Jack, Jaime A. Davidson, Daniel Einhorn, On Ganda, Alan J. Garber, Irl B. Hirsch, Edward S. Horton, Faramarz Ismail-Beigi, Paul S. Jellinger, Kenneth L. Jones, Lios Jovanovič, Harold Lebovitz, Philip Levy, Etie S. Moghissi, Eric A. Orzeck, Aaron I. Vinik, and Kathleen L. Wyne. 2011. American Association of Clinical Endocrinologists medical guidelines for clinical practice for developing a diabetes mellitus comprehensive care plan. Endocr. Pract. 17, 5 (2011), 826--831.
[25]
Kathleen A. Harder, John R. Bloomfield, Sue E. Sendelbach, Michele F. Shepherd, Pam S. Rush, Jamie S. Sinclair, Mark Kirschbaum, and Durand E. Burns. 2005. Improving the Safety of Heparin Administration by Implementing a Human Factors Process Analysis. Agency for Healthcare Research and Quality.
[26]
Patrice M. Healey and Edwin J. Jacobson. 1994. Common Medical Diagnoses: An Algorithmic Approach. Saunders.
[27]
Carl Hewitt, Peter Bishop, and Richard Steiger. 1973. A universal modular ACTOR formalism for artificial intelligence. In Proceedings of the International Joint Conference on Artificial intelligence (IJCAI’73). 235--245.
[28]
Richard Hillestad, James Bigelow, Anthony Bower, Federico Girosi, Robin Meili, Richard Scoville, and Roger Taylor. 2005. Can electronic medical record systems transform health care? Potential health benefits, savings, and costs. Health Affairs 24, 5 (2005), 1103--1117.
[29]
John T. James. 2013. A new, evidence-based estimate of patient harms associated with hospital care. J. Patient Safety 9, 3 (2013), 122--8.
[30]
Jan Martin Jansen, Rinus Plasmeijer, Pieter Koopman, and Peter Achten. 2010. Embedding a web-based workflow management system in a functional language. In Proceedings of the Language Descriptions, Tools and Applications Conference (LDTA’10), 2010.
[31]
Spencer S. Jones, Robert S. Rudin, Tanja Perry, and Paul G. Shekelle. 2014. Health information technology: An updated systematic review with a focus on meaningful use. Ann. Intern. Med. 60, 1 (2014), 48--54.
[32]
Denis Kilmov and Yuval Shahar. 2013. iALARM: An intelligent alert language for activation, response, and monitoring of medical alerts. In Proceedings of the Revised Selected Papers of the AIME 2013 Joint Workshop on Process Support and Knowledge Representation in Health Care.
[33]
David A. Kindig. 1971. Some implications of patient-oriented health care. In Proceedings of the Health Conference of the New York Academy of Medicine.
[34]
Andrew J. Ko, Robin Abraham, Laura Beckwith, Alan Blackwell, Margaret Burnett, Martin Erwig, Chris Scaffidi, Brad Myers, Mary Beth Rosson, Gregg Rothermel, and Susan Wiedenbeck. 2011. The state of the art in enduser software engineering. ACM Comput. Surv. 43, 3 (2011), Article No. 21.
[35]
Ross Koppel, Metlay Cohen, Brian Abaluck, Russell Localio, Stephen E. Kimmel, and Brian L. Strom. 2005. Role of computerized physician order entry systems in facilitating medication errors. J. Am. Med. Assoc. 293, 10 (2005), 1197--1203.
[36]
Christopher P. Landrigan, Gareth J. Parry, Catherine B. Bones, Andrew D. Hackbarth, Donald A. Goldmann, and Paul J. Sharek. 2010. Temporal trends in rates of Ppatient harm resulting from medical care. New Engl. J. Med. 363 (2010), 2124--2134.
[37]
Lucian L. Leape. 1994. Error in medicine. J. Am. Med. Assoc. 272, 23 (1994), 1851--1857.
[38]
Lucian L. Leape, Ann G. Lawthers, Troyen A. Brennan, and William G. Johnson. 1993. Preventing medical injury. Qual. Rev. Bull. 19, 5 (1993), 144--149.
[39]
Tita Alissa Listyowardojo, Raoul E. Nap, and Addie Johnson. 2011. Variations in hospital worker perceptions of safety culture. Int. J. Qual. Health Care 24, 1 (2011), 9--15.
[40]
Greg Little, Lydia B. Chilton, Max Goldman, and Robert C. Miller. 2010. TurKit: Human Computation Algorithms on Mechanical Turk. In Proceedings of the 23rd Annual ACM Symposium on User Interface Software and Technology.
[41]
Laurence E. Mather and Christopher J. Glynn. 1982. The minimum effective analgetic blood concentration of pethidine in patients with intractable pain. Br. J. Clin. Pharmacol. 14, 3 (1982), 385--390.
[42]
Wilson C. Mertens, Stefan C. Christov, George S. Avrunin, Lori A. Clarke, Leon J. Osterweil, Lucinda J. Cassells, and Jenna L. Marquard. 2012. Using process elicitation and validation to understand and improve chemotherapy ordering and delivery. Joint Commis. J. Qual. Patient Safety 38, 11 (2012), 497--505.
[43]
Gianpaolo Molino, Paolo Terenziani, Stefania Montani, Alessio Bottrighi, and Mauro Torchio. 2006. GLARE: A Domain-Independent System for Acquiring, Representing and Executing Clinical Guidelines. In Proceedings of the American Medical Informatics Association Annual Proceedings (AMIA’06).
[44]
Stuart B. Mushlin and Harry L. Greene II. 2010. Decision Making in Medicine (3rd ed.). Mosby.
[45]
Bonnie A. Nardi. 1993. A Small Matter of Programming: Perspectives on End User Computing. MIT Press, Cambridge, MA.
[46]
John F. Pane, Brad A. Myers, and Leah B. Miller. 2002. Using HCI Techniques to Design a More Usable Programming System. In Proceedings Symposia on Human Centric Computing Languages and Environments.
[47]
John F. Pane, Chotirat Ann Ratanamahatana, and Brad A. Myers. 2001. Studying the language and structure in nonprogrammers’ solutions to programming problems. Int. J. Hum.-Comput. Stud. 54, 2 (2001), 237--264.
[48]
Mor Peleg, Aziz A. Boxwala, Omolola Ogunyemi, Qin Zeng, Samson Tu, Ronilda Lacson, Elmer Bernstam, Nachman Ash, Peter Mork, Lucila Ohno-Machado, Edward H. Shortliff, and Robert A. Greenes. 2000. GLIF3: The evolution of a guideline representation format. In Proceedings American Medical Informatics Association (AMIA’00). 645--649.
[49]
Donald D. Prince, Francis M. Bush, Stephen Long, and Stephen W. Harkins. 1994. A comparison of pain measurement characteristics of mechanical visual analogue and simple numerical rating scales. Pain 56, 2 (1994), 217--226.
[50]
Donald D. Prince, Patricia A. McGarth, Amir Rafii, and Barbara Buckingham. 1983. The validation of visual analogue scales as ratio scale measurments for chronic and experimental pain. Pain 17, 1 (1983), 45--56.
[51]
Gruia-Catalin Roman. 1985. A taxonomy of current issues in requirements engineering. Computer 4.
[52]
Massimo Ruffolo, Rosario Curia, and Lorenzo Gallucci. 2005. Process Management in Health Care: A System for Preventing Risks and Medical Errors. In Proceedings of the Business Process Management. 334--343.
[53]
Arvind Satyanarayan, Kanit Wongsuphasawat, and Jeffrey Heer. 2014. Declarative Interaction Design for Data Visualization. In Proceedings of the 27th Annual ACM Symposium on User Interface Software and Technology.
[54]
E. M. Schimmel. 1964. The hazards of hospitalization. Ann. Intern. Med. 60, 1 (1964), 100--110.
[55]
Yuval Sharar, Silvia Miksch, and Peter Johnson. 1998. The Asgaard project: a task-specific framework for the application and critiquing of time-oriented clinical guidelines. Artif. Intell. Med. 14, 1--2 (1998), 29--51.
[56]
M. E. Sime, T. R. G. Green, and D. J. Guest. 1972. Psychological evaluation of two conditional constructs used in computer languages. Int. J. Hum.-Comput. Stud. 5, 1 (1973), 105--113.
[57]
Sara J. Singer, David M. Gaba, Alyson Falwell, Shoutzu Lin, Jennifer Hayes, and Laurence Baker. 2009. Patient safety climate in 92 US hospitals: Differences by work area and discipline. Medical Care 47, 1 (2009), 23--31.
[58]
Hardeep Singh, Shrinidi Mani, Donna Espadas, Nancy Petersen, Veronica Franklin, and Laura A. Petersen. 2009. Prescription errors and outcomes related to inconsistent information transmitted through computerized order entry: A prospective study. Arch. Intern. Med. 169, 10 (2009), 982--989.
[59]
Andreas Stefik, Susanna Siebert, Melissa Stefik, and Kim Slattery. 2011. An empirical comparison of the accuracy rates of novices using the Quorum, Perl, and Randomo programming languages. In Proceedings of the 3rd ACM SIGPLAN Workshop on Evaluation and Usability of Programming Languages and Tools.
[60]
Ian G. Stiell, R. Douglas McKnight, Gary H. Greenberg, Ian McDowell, Rama C. Nair, George A. Wells, Cristine Johns, and James R. Worthington. 1994. Implementation of the ottawa ankle rules. J. Am. Med. Assoc. 271, 11 (1994), 827--832.
[61]
The SPRINT Research Group. 2015. A randomized trial of intensive versus standard blood-pressure control. New Engl. J. Med. 373, 22 (2015), 2103--2116.
[62]
Samson W. Tu and Mark A. Musen. 1999. A flexible approach to guideline modeling. In Proceedings of the American Medical Informatics Association Conference (AMIA’99). 420--424.
[63]
W. M. P. van der Aalst, M. Pesic, and H. Schonenberg. 2009. Declarative workflows: Balancing between flexibility and support. Comput. Sci.-Res. Dev. 23, 2 (2009), 99--113.
[64]
Wil M. P. van der Aalst, Arthur H. M. ter Hofstede, and Mathias Weske. 2003. Busisness Process Management: A Survey. In Proceedings of the 2003 International Conference on Business Process Management.
[65]
Washington Adventist Hospital. 2009. Weight-Based beparin orders. Retrieved from https://extranet.adventisthealthcare.com/LinkClick.aspx?fileticket=rroECsjCLnY%3D8tabid=6498mid=1813.
[66]
K. N. Whitley. 1997. Visual Programming Languages and the Empirical Evidence For and Against. J. Vis. Lang. Comput. 8, 1 (1997), 109--142.
[67]
Paul R. Yarnold and Robert C. Soltysik. 2004. Optimal Data Analysis: A Guidebook With Software for Windows. APA Books.
[68]
Paul R. Yarnold and Robert C. Soltysik. 2016. Maximizing Predictive Accuracy. ODA Books.

Cited By

View all
  • (2020)Recent advances of HCI in decision-making tasks for optimized clinical workflows and precision medicineJournal of Biomedical Informatics10.1016/j.jbi.2020.103479108(103479)Online publication date: Aug-2020

Index Terms

  1. POP-PL: A Patient-Oriented Prescription Programming Language

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Programming Languages and Systems
    ACM Transactions on Programming Languages and Systems  Volume 40, Issue 3
    September 2018
    230 pages
    ISSN:0164-0925
    EISSN:1558-4593
    DOI:10.1145/3236464
    Issue’s Table of Contents
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 05 July 2018
    Accepted: 01 February 2018
    Revised: 01 October 2017
    Received: 01 October 2016
    Published in TOPLAS Volume 40, Issue 3

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. DSL design
    2. empirical evaluation
    3. medical prescriptions
    4. medical programming languages

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Funding Sources

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)290
    • Downloads (Last 6 weeks)41
    Reflects downloads up to 01 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2020)Recent advances of HCI in decision-making tasks for optimized clinical workflows and precision medicineJournal of Biomedical Informatics10.1016/j.jbi.2020.103479108(103479)Online publication date: Aug-2020

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format.

    HTML Format

    Login options

    Full Access

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media