Write a Blog >>
ICPC 2020
Mon 13 - Wed 15 July 2020
co-located with ICSE 2020
Wed 15 Jul 2020 00:00 - 00:12 at ICPC - Session 9: For Developers Chair(s): Anderson Oliveira

The dynamic typing discipline of Python allows developers to program at a high level of abstraction. However, type related bugs are commonly encountered in Python systems due to the lack of type declaration and static type checking. Especially, the misuse of dynamic typing discipline produces underlying bugs and increases maintenance efforts. In this paper, we introduce six types of dynamic typing related practices in Python programs, which are the common but potentially risky usage of dynamic typing discipline by developers. We also implement a tool named PYDYPE to detect them. Based on this tool, we conduct an empirical study on nine real-world Python systems (with the size of more than 460KLOC) to understand dynamic typing related practices. We investigate how widespread the dynamic typing related practices are, why they are introduced into the systems, whether their usage correlates with increased likelihood of bug occurring, and how developers fix dynamic typing related bugs. The results show that: (1) dynamic typing related practices exist inconsistently in different systems and Inconsistent Variable Types is most prevalent; (2) they are introduced into systems mainly during early development phase to promote development efficiency; (3) they have a significant positive correlation with bug occurring; (4) developers tend to add type checks or exception handling to fix dynamic typing related bugs. These results benefit future research in coding convention, language design, bug detection and fixing.

Wed 15 Jul
Times are displayed in time zone: (UTC) Coordinated Universal Time change

icpc-2020-research
00:00 - 01:00: Research - Session 9: For Developers at ICPC
Chair(s): Anderson OliveiraPUC-Rio
icpc-2020-research00:00 - 00:12
Paper
Zhifei ChenNanjing University, Yanhui LiDepartment of Computer Science and Technology, Nanjing University, Bihuan ChenFudan University, Wanwangying MaNanjing University, Lin ChenNanjing University, Baowen XuNanjing University
Media Attached
icpc-2020-research00:12 - 00:24
Paper
Amal A. ShargabiQassim University, Syed Ahmad AljunidUniversiti Teknologi MARA, Muthukkaruppan AnnamalaiUniversiti Teknologi MARA, Abdullah Mohd ZinUniversiti Kebangsaan Malaysia
Media Attached
icpc-2020-tool-demonstration00:24 - 00:36
Paper
Ahmad JbaraComputer and Cyber Sciences, Augusta University, Georgia, USA, Bar Ben Michael, Or Shacham, Omer Tavor
Media Attached
icpc-2020-era00:36 - 00:48
Paper
Toyomi IshidaNara Institute of Science and Technology, Hidetake UwanoNational Institute of Technology, Nara College, Japan, Yoshiharu Ikutani Nara Institute of Science and Technology
Media Attached
icpc-2020-era00:48 - 01:00
Paper
James DominicClemson University, Brock TubreClemson Universtiy, Jada Houser Clemson University, Charles RitterClemson University, Deborah KunkelClemson University, Paige RodegheroClemson University
Media Attached