Skip to content
0:00 / 0:00

#idris#dependenttypes#quantitativetypetheory

Quantitative Types in Idris 2

ACM SIGPLAN

11K subscribers • 61 videos on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.

Advanced. Deep dive for people who know the field.

2.4K views5 years ago1 recommendation

Programming languagesLanguage design and type systemsFunctional programming

An introduction to how Idris 2 uses Quantitative Type Theory to support linear and dependent types.

Dependent types allow us to express precisely what a function is intended to do. Recent work on Quantitative Type Theory (QTT) extends dependent type systems with linearity, also allowing precision in expressing when a function can run. This is promising, because it suggests the ability to design and reason about resource usage protocols, such as we might find in distributed and concurrent programming, where the state of a communication channel changes throughout program execution. Up to now, however, there has not been a full-scale programming language with which to experiment with these ideas. Idris 2 is a new version of the dependently typed language Idris, with a new core language based on QTT, supporting linear and dependent types. In this talk I will show the benfits of QTT in Idris 2, in particular how it improves interactive program development by reducing the search space for type-driven program synthesis; and, how resource tracking in the type system leads to type-safe concurrent programming with session types. Presented by Edwin Brady

Why it's here

1 person recommends this

u/ysangkokin r/haskell • Recommends

Quantitative Types in Idris 2

u/ysangkokin r/ProgrammingLanguages • Recommends

Quantitative Types in Idris 2

u/Crul_in r/ProgrammingLanguages • Mentions

On “Looking for an experimental functional language that can write code automatically based on function signatures”

From your last recomendation. suggested also in aother comment, I found Quantitative Types in Idris 2 \(YouTube\). I would say that's exactly the concept I remember. I am not sure if the video I saw at the time was about Idris (2?) but it's close enough. And in that video I found 2 more useful terms to search about: - Quantitative types - Type driven program synthesis

u/Crul_in r/ProgrammingLanguages • Mentions

On “Looking for an experimental functional language that can write code automatically based on function signatures”

Thanks, this was a great clue. After I quick search I found Quantitative Types in Idris 2 \(YouTube\). (From a quick watch) I would say that's exactly the concept I remember. I am not sure if the video I saw at the time was about Idris (2?) but it's close enough. And in that video I found 2 more useful terms to search about: - Quantitative types - Type driven program synthesis

u/Nathanfennerin r/ProgrammingLanguages • Mentions

On “Metadata applied to types or variables?”

This is usually called an "information-flow type system#Security_type_system)". They're most popular for security; I can have something that's "secret" (e.g. a database key) or "private" (e.g. a user's private messages) and the type system will ensure that they're not "leaked" anywhere that's not allowed to see them (for example, you don't accidentally log the database key somewhere, or show one user's messages to someone else). Another application I've seen (that will also probably describe it in more detail for you) is the MixT project, which uses information for for distributed-consistency (i.e. some values are "serializable" and some are "eventually consistent"; but if a computation re…