Giter Site home page Giter Site logo

engaging-large-scale-functional-programming's Introduction

Engaging, Large-Scale Functional Programming Education in Physical and Virtual Space

This repository contains the resources of the paper "Engaging, Large-Scale Functional Programming Education in Physical and Virtual Space" published at "Trends in Functional Programming in Education 2021/2022" (TFPIE 2021/2022).

The paper reports about teaching experiences, engagement mechanisms, and (automation) tools to successfully run a functional programming course with more than 1000 students in physical and virtual space. You can find the paper here.

As part of the paper, we also share a selected set of exercises and tools. You can find them here. Said exercises were created for the winter semester 2019 and winter semester 2020 iterations of the Functional Programming and Verification course at the Technical University of Munich. You can find further, though probably less exciting, exercises of these iterations here and here.

Please contact one of the authors if you are interested in any exercises not published here, want to have our LaTeX sources, or if you have any other question.

Abstract

Worldwide, computer science departments have experienced a dramatic increase in the number of student enrolments. Moreover, the ongoing COVID-19 pandemic requires institutions to radically replace the traditional way of on-site teaching, moving interaction from physical to virtual space. We report on our strategies and experience tackling these issues as part of a Haskell-based functional programming and verification course, accommodating over 2000 students in the course of two semesters. Among other things, we fostered engagement with weekly programming competitions and creative homework projects, workshops with industry partners, and collaborative pair-programming tutorials. To offer such an extensive programme to hundreds of students, we automated feedback for programming as well as inductive proof exercises. We explain and share our tools and exercises so that they can be reused by other educators.

Authors

Acknowledgements

We want to thank all people involved in the course, in particular Tobias Nipkow, Manuel Eberl, our student assistants, the ArTEMiS development team, our industry partners Active Group, QAware, TNG Technology Consulting, and Well-Typed, and last but not least our 2000 Haskell students.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.