Not just a computer scientist
Wed 26th - 02:00 PM (Workshop)
F# added support for asynchronous workflows over 10 years ago, so you would think that the problem of asynchronous programming should have been fixed by now. Yet, if you try to make sense of the different abstractions for asynchronous programming, it is easy to get lost! What is the difference between IObservable, IEvent, Async, Task and AsyncSeq? When should you use which of those and does it really matter?
In this hands-on workshop, we're going to look under the cover of F# abstractions for asynchronous and reactive programming. We'll implement some of them from scratch to understand how they actually work. As is often the case in F#, looking at the type definition is the best way to understand what is going on!
Fri 28th - 09:00 AM (Talk)
There are many interesting things happening in a spreadsheet. It needs an interactive user interface where users can edit data and formulas in cells, it needs to parse formulas that users write, it needs to evaluate formulas and show results on the fly and it also needs to handle errors such as division by zero and circular references. In this live coding session, Tomas will attempt to implement all of these features live on stage. The talk will show a number of techniques and principles that are useful even if you do not plan to create a competition to Excel 365 and Google Sheets!
Tomas is a computer scientist, book author and open-source developer. He wrote a popular book called "Real-World Functional Programming" and is a lead developer of several F# open-source libraries, but he also contributed to the design of the F# language as an intern and consultant at Microsoft Research. He is a partner at fsharpWorks where he provides trainings and consulting services.
Tomas recently submitted his PhD thesis at the University of Cambridge focused on types for understanding context usage in programming languages, but his most recent work also includes two essays that attempt to understand programming through the perspective of philosophy of science.