Skip to content
0:00 / 0:00

#idris#programsynthesis#dependenttypes

Secrets of type driven program synthesis - Edwin Brady | Lambda Days 2021

Code Sync

15K subscribers • 57 videos on Hallway

YouTube
  • Recommended by 2 people: 1 on Lobsters and 1 in engineering communities.

Advanced. Deep dive for people who know the field.

1.4K views4 years ago2 recommendations

Programming languagesComputer scienceFunctional programmingLanguage design and type systemsComputation and complexity

Edwin Brady demonstrates how Idris uses dependent types to interactively synthesize program fragments from type definitions.

This video was recorded at virtual Lambda Days conference, which took place on 16-19th February 2021 - lambdadays.org/lambdadays2021 Secrets of type driven program synthesis by Edwin Brady ABSTRACT Idris is a functional programming language with first-class types, where types may be parameterised by other values. This gives the language implementation a lot of information up front about what a function should do, which means we can use Idris is our interactive assistant, where we write programs by conversation with the machine. As part of this, we are actively developing program synthesis tools, which generate fragments of programs from types. This can appear like magic! However, the key ideas are surprisingly simple. In this talk, I will demonstrate the current state of program synthesis and Idris, and try to demystify how it works, as well as discuss some related work and possible future research directions. • Follow us on social: Website: lambdadays.org​ Twitter: twitter.com/LambdaDays​ • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: codesync.global • SUBSCRIBE TO OUR CHANNEL youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw SPEAKER - Edwin Brady Creator of the Idris programming language Edwin is Lecturer in Computer Science at the University of St Andrews in Scotland, interested in type-driven development, domain-specific languages and reasoning about effectful programs. When he's not doing that, he might be playing Go, watching cricket, or wandering around Scotland's hills. --- Lambda Days Website: lambdadays.org​ Twitter: twitter.com/LambdaDays​

Why it's here

2 people recommend this

What people say. Recommended for showing how compilers can deduce declarative steps and synthesize code from pre and post conditions.

agent281on Lobsters • Recommends

Secrets of type driven program synthesis

u/todo_codein r/ProgrammingLanguages • Recommends

On “Tahini — dynamic, interpreted and impurely functional, with design-by-contract feature.”

There are languages, I'm specifically talking about Idris as I have the most experience with it, where you write the reduction/logic steps, and the compiler can write or deduce the declarative steps you would have written to achieve the same thing. I think it's somewhere in here. link to this video Basically if you write pre and post conditions, that should be all you need to know what to do to the input data, like removing an element from the list