Pedagogy of Teaching Pointers in the C Programming Language using Graph Transformations

Visual learners think in pictures rather than words and learn best when they utilize representations based on graphs, tables, charts, maps, colors and diagrams. We propose a new pedagogy for teaching pointers in the C programming language using graph transformation systems to visually simulate pointer manipulation. In an Introduction to C course, the topic of pointers is often the most difficult one for students to understand; therefore, we experiment with graph-based representations of dynamic pointer structures to reinforce the learning. Groove, a graph transformation tool, is used to illustrate the behaviour of pointers through modelling and simulation. A study is presented to evaluate the effectiveness of the approach. This paper will also provide a comparison to other teaching methods in this area.

Authors

Institutions

Publication Details

Journal
Electronic Proceedings in Theoretical Computer Science
Published
2025-03-25
DOI
https://doi.org/10.4204/eptcs.417.7
Primary Topic
Teaching and Learning Programming
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Pedagogy of Teaching Pointers in the C Programming Language using Graph Transformations

Adwoa Donyina, Reiko Heckel
Electronic Proceedings in Theoretical Computer Science
Teaching and Learning Programming
article

Pedagogy of Teaching Pointers in the C Programming Language using Graph Transformations

Adwoa Donyina, Reiko Heckel
article en

Abstract

Visual learners think in pictures rather than words and learn best when they utilize representations based on graphs, tables, charts, maps, colors and diagrams. We propose a new pedagogy for teaching pointers in the C programming language using graph transformation systems to visually simulate pointer manipulation. In an Introduction to C course, the topic of pointers is often the most difficult one for students to understand; therefore, we experiment with graph-based representations of dynamic pointer structures to reinforce the learning. Groove, a graph transformation tool, is used to illustrate the behaviour of pointers through modelling and simulation. A study is presented to evaluate the effectiveness of the approach. This paper will also provide a comparison to other teaching methods in this area.

Electronic Proceedings in Theoretical Computer ScienceVol. 417
University of Leicester (GB), University of New Haven (US)
Quality Education
Openalex Percentile: Top 95%
Teaching and Learning Programming
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Pedagogy of Teaching Pointers in the C Programming Language using Graph Transformations — Adwoa Donyina, Reiko Heckel · Electronic Proceedings in Theoretical Computer Science (2025) | TGRS Research Map | TGRS