I got plenty o’ nuttin’

Research output: Chapter in Book/Report/Conference proceedingConference contribution book

51 Citations (Scopus)


Work to date on combining linear types and dependent types has deliberately and successfully avoided doing so. Entirely fit for their own purposes, such systems wisely insist that types depend only on the replicable sublanguage, thus sidestepping the issue of counting uses of limited-use data either within types or in ways which are only really needed to shut the typechecker up. As a result, the linear implication ('lollipop') stubbornly remains a non-dependent ST. This paper defines and establishes the basic metatheory of a type theory supporting a 'dependent lollipop' (x:S) ⊸ T[x], where what the input used to be is in some way commemorated by the type of the output. For example, we might convert list to length-indexed vectors in place by a function with type (l: List X) ⊸ Vector X (length l). Usage is tracked with resource annotations belonging to an arbitrary rig, or 'riNg without Negation'. The key insight is to use the rig's zero to mark information in contexts which is present for purposes of contemplation rather than consumption, like a meal we remember fondly but cannot eat twice. We need no runtime copies of l to form the above vector type. We can have plenty of nothing with no additional runtime resource, and nothing is plenty for the construction of dependent types.

Original languageEnglish
Title of host publicationA List of Successes That Can Change the World
Subtitle of host publicationEssays Dedicated to Philip Wadler on the Occasion of His 60th Birthday
EditorsSam Lindley, Conor McBride, Phil Trinder, Don Sannella
Place of PublicationSwitzerland
Number of pages27
ISBN (Print)9783319309354
Publication statusPublished - 25 Mar 2016

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
ISSN (Print)0302-9743


  • computer science
  • computers
  • dependent types
  • in contexts
  • linear implications
  • linear types
  • meta-theory
  • runtimes
  • type theory
  • artificial intelligence


Dive into the research topics of 'I got plenty o’ nuttin’'. Together they form a unique fingerprint.

Cite this