Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Gonzales, Mark Edward M., Ibrahim, Hans Oswald A., Ong, Elyssia Barrie H., Fernandez, Ryan Austin
Format: Preprint
Veröffentlicht: 2024
Schlagworte:
Online-Zugang:https://arxiv.org/abs/2404.10250
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
_version_ 1866913316543135744
author Gonzales, Mark Edward M.
Ibrahim, Hans Oswald A.
Ong, Elyssia Barrie H.
Fernandez, Ryan Austin
author_facet Gonzales, Mark Edward M.
Ibrahim, Hans Oswald A.
Ong, Elyssia Barrie H.
Fernandez, Ryan Austin
contents Creative coding is an experimentation-heavy activity that requires translating high-level visual ideas into code. However, most languages and libraries for creative coding may not be adequately intuitive for beginners. In this paper, we present AniFrame, a domain-specific language for drawing and animation. Designed for novice programmers, it (i) features animation-specific data types, operations, and built-in functions to simplify the creation and animation of composite objects, (ii) allows for fine-grained control over animation sequences through explicit specification of the target object and the start and end frames, (iii) reduces the learning curve through a Python-like syntax, type inferencing, and a minimal set of control structures and keywords that map closely to their semantic intent, and (iv) promotes computational expressivity through support for common mathematical operations, built-in trigonometric functions, and user-defined recursion. Our usability test demonstrates AniFrame's potential to enhance readability and writability for multiple creative coding use cases. AniFrame is open-source, and its implementation and reference are available at https://github.com/memgonzales/aniframe-language.
format Preprint
id arxiv_https___arxiv_org_abs_2404_10250
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle AniFrame: A Programming Language for 2D Drawing and Frame-Based Animation
Gonzales, Mark Edward M.
Ibrahim, Hans Oswald A.
Ong, Elyssia Barrie H.
Fernandez, Ryan Austin
Programming Languages
Human-Computer Interaction
Multimedia
D.3.2; J.5
Creative coding is an experimentation-heavy activity that requires translating high-level visual ideas into code. However, most languages and libraries for creative coding may not be adequately intuitive for beginners. In this paper, we present AniFrame, a domain-specific language for drawing and animation. Designed for novice programmers, it (i) features animation-specific data types, operations, and built-in functions to simplify the creation and animation of composite objects, (ii) allows for fine-grained control over animation sequences through explicit specification of the target object and the start and end frames, (iii) reduces the learning curve through a Python-like syntax, type inferencing, and a minimal set of control structures and keywords that map closely to their semantic intent, and (iv) promotes computational expressivity through support for common mathematical operations, built-in trigonometric functions, and user-defined recursion. Our usability test demonstrates AniFrame's potential to enhance readability and writability for multiple creative coding use cases. AniFrame is open-source, and its implementation and reference are available at https://github.com/memgonzales/aniframe-language.
title AniFrame: A Programming Language for 2D Drawing and Frame-Based Animation
topic Programming Languages
Human-Computer Interaction
Multimedia
D.3.2; J.5
url https://arxiv.org/abs/2404.10250