An Exploratory Eye Tracking Study on How Developers Classify and Debug Python Code in Different Paradigms

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Flint, Samuel W., Chauhan, Jigyasa, Mansoor, Niloofar, Sharif, Bonita, Dyer, Robert
Format: Preprint
Published: 2025
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866908641685143552
author Flint, Samuel W.
Chauhan, Jigyasa
Mansoor, Niloofar
Sharif, Bonita
Dyer, Robert
author_facet Flint, Samuel W.
Chauhan, Jigyasa
Mansoor, Niloofar
Sharif, Bonita
Dyer, Robert
contents Modern programming languages, such as Python, support language features from several paradigms, such as object-oriented, procedural, and functional. Research has shown that code written in some paradigms can be harder to comprehend, but to date, no research has looked at which paradigm-specific language features impact comprehension. To this end, this study seeks to uncover which paradigm-specific features impactcomprehension and debugging of code or how multi-paradigm code might affect a developer's ability to do so. We present an exploratory empirical eye-tracking study to investigate 1) how developers classify the predominant paradigm in Python code and 2) how the paradigm affects their ability to debug Python code. The goal is to uncover if specific language features are looked at more often while classifying and debugging code with a predominant paradigm. Twenty-nine developers (primarily students) were recruited for the study and were each given four classification and four debugging tasks in Python. Eye movements were recorded during all the tasks. The results indicate confusion in labeling Functional and Procedural paradigms, but not Object-Oriented. The code with predominantly functional paradigms also took the longest to complete. Changing the predominant paradigm did not affect the ability to debug the code, though developers did rate themselves with lower confidence for Functional code. We report significant differences in reading patterns during debugging, especially in the Functional code. During classification, results show that developers do not necessarily read paradigm-relevant token types.
format Preprint
id arxiv_https___arxiv_org_abs_2511_07612
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle An Exploratory Eye Tracking Study on How Developers Classify and Debug Python Code in Different Paradigms
Flint, Samuel W.
Chauhan, Jigyasa
Mansoor, Niloofar
Sharif, Bonita
Dyer, Robert
Software Engineering
Modern programming languages, such as Python, support language features from several paradigms, such as object-oriented, procedural, and functional. Research has shown that code written in some paradigms can be harder to comprehend, but to date, no research has looked at which paradigm-specific language features impact comprehension. To this end, this study seeks to uncover which paradigm-specific features impactcomprehension and debugging of code or how multi-paradigm code might affect a developer's ability to do so. We present an exploratory empirical eye-tracking study to investigate 1) how developers classify the predominant paradigm in Python code and 2) how the paradigm affects their ability to debug Python code. The goal is to uncover if specific language features are looked at more often while classifying and debugging code with a predominant paradigm. Twenty-nine developers (primarily students) were recruited for the study and were each given four classification and four debugging tasks in Python. Eye movements were recorded during all the tasks. The results indicate confusion in labeling Functional and Procedural paradigms, but not Object-Oriented. The code with predominantly functional paradigms also took the longest to complete. Changing the predominant paradigm did not affect the ability to debug the code, though developers did rate themselves with lower confidence for Functional code. We report significant differences in reading patterns during debugging, especially in the Functional code. During classification, results show that developers do not necessarily read paradigm-relevant token types.
title An Exploratory Eye Tracking Study on How Developers Classify and Debug Python Code in Different Paradigms
topic Software Engineering
url https://arxiv.org/abs/2511.07612