skip to main content
10.1145/2814189.2814193acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

Making live programming practical by bridging the gap between trial-and-error development and unit testing

Published: 25 October 2015 Publication History

Abstract

Live programming environments are powerful experimental tools that enable programmers to write programs in a trial-and-error way thanks to its quick feedback. Since the feedback includes intermediate data such as a control flow and a history of variable bindings, the live programming environments integrate debugging into editing. One of the disadvantages of such interactive systems is that tests are transient. If we wrote persistent tests using an automated testing framework like JUnit, we could not fully enjoy "liveness." This is because we need to write proper parameters and expected values in advance. We develop Shiranui, a live programming environment with unit testing features. In Shiranui, the programmers can check functions' behaviors in a lively manner and then convert the results into persistent test cases. One of the features enables the programmers to make a test case from an intermediate result that are found in a debugging process. It makes constructing error-reproducing-tests easier.

References

[1]
T. Imai, H. Masuhara, and T. Aotani. Shiranui: Test-friendly Live Programming Environment. In The 31st JSSST Annual Conference, Sep. 2014.
[2]
S. McDirmid. Usable Live Programming. Proceedings of the 2013 ACM international symposium on New ideas, new paradigms, and reflections on programming & software - Onward! ’’13, pages 53–62, 2013.
[3]
Apple Inc. Swift - Overview - Apple Developer. https://developer.apple.com/swift/. Accessed 2015-6-30. Proposals Overview of Shiranui Testing Features in Shiranui Implementation Presenter Contents of Demonstration What is Live Programming? Why (Existing) Live Programming is NOT Usable for Practical Development? Our Solution and Design of Shiranui Free Live Coding Demos with Shiranui

Cited By

View all
  • (2019)Live software developmentCompanion Proceedings of the 3rd International Conference on the Art, Science, and Engineering of Programming10.1145/3328433.3328456(1-6)Online publication date: 1-Apr-2019
  • (2018)Live, synchronized, and mental map preserving visualization for data structure programmingProceedings of the 2018 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software10.1145/3276954.3276962(72-87)Online publication date: 24-Oct-2018
  • (2018)Integrating Runtime Values with Source Code to Facilitate Program Comprehension2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)10.1109/ICSME.2018.00093(743-748)Online publication date: Sep-2018
  • Show More Cited By

Index Terms

  1. Making live programming practical by bridging the gap between trial-and-error development and unit testing

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SPLASH Companion 2015: Companion Proceedings of the 2015 ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity
    October 2015
    112 pages
    ISBN:9781450337229
    DOI:10.1145/2814189
    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].

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 25 October 2015

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Debugging
    2. Live Programming
    3. Testing

    Qualifiers

    • Research-article

    Conference

    SPLASH '15
    Sponsor:

    Upcoming Conference

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)3
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 07 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)Live software developmentCompanion Proceedings of the 3rd International Conference on the Art, Science, and Engineering of Programming10.1145/3328433.3328456(1-6)Online publication date: 1-Apr-2019
    • (2018)Live, synchronized, and mental map preserving visualization for data structure programmingProceedings of the 2018 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software10.1145/3276954.3276962(72-87)Online publication date: 24-Oct-2018
    • (2018)Integrating Runtime Values with Source Code to Facilitate Program Comprehension2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)10.1109/ICSME.2018.00093(743-748)Online publication date: Sep-2018
    • (2017)Live Data Structure ProgrammingCompanion Proceedings of the 1st International Conference on the Art, Science, and Engineering of Programming10.1145/3079368.3079400(1-7)Online publication date: 3-Apr-2017

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media