Skip to main content ITU
Logo
  • Programmes
    • BSc Programmes
    • BSc in Global Business Informatics
    • BSc in Digital Design and Interactive Technologies
    • BSc in Software Development
    • BSc in Data Science
    • Applying for a BSc programme
    • MSc Programmes
    • MSc in Digital Innovation & Management
    • MSc in Digital Design and Interactive Technologies
    • MSc in Software Design
    • MSc in Computer Science
    • MSc in Data Science
    • MSc in Games
    • Applying for an MSc programme
    • Student Life
    • Women in tech
    • Student organisations at ITU
    • Labs for students
    • Practical Information for International Students
    • Ask a student
    • Study Start
    • Study and Career Guidance
    • Guest Students
    • Who can be a Guest Student
    • ITU Summer University
    • Exchange Student
    • Become an exchange student at ITU
    • Open House
    • Open House - MSc programmes
    • Open House - BSc programmes
  • Professional Education
    • Master in IT
    • Master in IT Management
    • Single Subjects
    • About single subjects
    • Contact
    • Contact us here
  • Research
    • Departments
    • Business IT Department
    • Computer Science Department
    • Digital Design Department
    • Research entities
    • Research Groups
    • Labs
    • Research Centres
    • Centre for Digital Play
    • Center for Climate IT
    • Center for Computing Education Research
    • Centre for Digital Welfare
    • Centre for Information Security and Trust
    • European Blockchain Centre
    • Danish Institute for IT Program Management
    • ITU Research Portal
    • Find Researcher
    • Find Research
    • Research Ethics and Integrity
    • Good Scientific Practice
    • Technical Reports
    • Technical Reports
    • PhD Programme
    • About the PhD Programme
    • PhD Courses
    • PhD Defences
    • PhD Positions
    • Types of Enrolment
    • PhD Handbook
    • PhD Support
  • Collaboration
    • Collaboration with students
    • Project collaboration
    • Project Market
    • Student worker
    • Project postings
    • Job and Project bank
    • Employer Branding
    • IT Match Making
    • Hiring an ITU student or graduate
    • Make a post in the job bank
    • Research collaboration
    • Licensing Opportunities
    • Open Entrepreneurship
    • Research collaboration
    • Industrial PhD
    • Hire an Industrial PhD
    • Innovation and entrepreneurship
    • ITU Business Development
    • ITU Startup
  • About ITU
    • About ITU
    • Press
    • Vacancies
    • Contact
  • DK
ITU
ITU  /  Research  /  Technical Reports  /  Technical Reports Archive  /  2006  /  A Spreadsheet Core Implementation in C#
  • Research
    • Research Departments
    • Research Ethics and Integrity
    • Good Scientific Practice
    • Research Groups and Centers
    • Labs
    • Technical Reports
      • Technical Reports Archive
        • 2023
        • 2021
        • 2018
        • 2017
        • 2016
        • 2015
        • 2014
        • 2013
        • 2012
        • 2011
        • 2010
        • 2009
        • 2008
        • 2007
        • 2006
          • λ-sub as an explicit substitution calculus
          • Bigraphical Location Models
          • BDNF-Based Matching of Bigraphs
          • Proceedings of the 2nd International REA Technology Workshop
          • A Spreadsheet Core Implementation in C#
            • Variational Deinterlacing
            • The 4P Taxonomy: A Survey of Software Development Environments
            • Business Process Execution with Bigraphs and Reactive XML
            • Sortings for Reactive Systems
            • LILY Operational Semantics and Models of Linear Abadi-Plotkin Logic
            • Preliminary results of a persistent execution engine
            • The Context-Dependent Mobile Communication Platform
            • Supply Chain Modeling with REA
            • The YUIO Language: Supporting Evaluation and Implementation of Virtual Windows
            • Toward a Design-Oriented User Interface Specification That Runs
            • User Interface Development by Proxy
            • The C5 Generic Collection Library for C# and CLI
          • 2005
          • 2004
          • 2003
          • 2002
          • 2001
          • 2000
      • PhD Programme

    A Spreadsheet Core Implementation in C#

    TR-2006-91, Author: Peter Sestoft

    A Spreadsheet Core Implementation in C#


    Peter Sestoft

    September 2006

    Abstract

    One purpose of this report and the accompanying implementation isto enable experiments with innovative spreadsheet functionality andimplementation techniques. Thus we have attempted to collect andpresent a considerable body of knowledge about spreadsheetimplementation. The report also presents implementation techniquesthat are believed to be new, and reports on some experiments withthem.

    The report includes:

    • A description of the spreadsheet computation model as known from e.g. VisiCalc and Microsoft Excel, the challenges of efficient recalculation, and a survey of spreadsheet literature and existing implementations.
    • A description of CoreCalc, which is our implementation of core spreadsheet functionality, and a discussion of design alternatives.
    • An investigation of a possibly novel way to represent the support graph, which is a device for achieving minimal recalculation.
    • Summaries of two MSc projects using the core spreadsheet codebase. One project uses runtime .NET code generation to speed up recalculation, by which it achieves speeds comparable to Microsoft Excel. The other project implements so-called function sheets, permitting users to define functions as sheets (instead of a programming language), as proposed by Peyton Jones, Blackwell and Burnett in 2003.
    • A list of all known US patents and patent applications related to spreadsheet implementation

    Available as pdf.


    Contact us

    Phone
    +45 7218 5000
    E-mail
    itu@itu.dk

    All contact information

    Web Accessibility Statement

    Find us

    IT University of Copenhagen
    Rued Langgaards Vej 7
    DK-2300 Copenhagen S
    Denmark
    How to get here

    Follow us

    ITU Student /
    Privacy /
    EAN-nr. 5798000417878/
    CVR-nr. 29 05 77 53 /
    P-nummer 1005162959

    This page is printed from https://itu.dk/