Two seminars this week

Jan Kofron jan.kofron at d3s.mff.cuni.cz
Mon Mar 24 13:02:48 CET 2025


Dear all,

Let me invite you to the two seminars that are planned for this week 
[1]. Since they will be given by our visiting guests, they take place at 
non-standard times. The first talk will take place on Wednesday, March 
26 at 14:00 in Malá aula and will be given by Alan Mycroft (Cambridge 
University), while the second one will take place on Thursday, March 27, 
at 14:00 in S510 and will be given by Stephen Kell (King's College 
London). For the abstracts please refer below.

[1] https://d3s.mff.cuni.cz/seminar/

Thanks, best regards!
Jan

====

Alan Mycroft (Cambridge University)
March 26, 2025 at 14:00 in Malá aula

Points for Free: Embedding Pointful Array Programming in Python

Abstract: Alan will talk about joint work with Jakub Bachurski (link). 
Multidimensional array operations are ubiquitous in machine learning. 
The dominant ecosystem in this field is centred around Python and NumPy, 
where programs are expressed with elaborate and error-prone calls in the 
point-free array programming model. Such code is difficult to statically 
analyse and maintain. Various other array programming paradigms offer to 
solve these problems, in particular the pointful style of Dex. However, 
only limited approaches—based on Einstein summation—have been embedded 
in Python. We introduce Ein, a pointful array DSL embedded in Python. We 
also describe a novel connection between pointful and point-free array 
programming. Thanks to this connection, Ein generates performant and 
type-safe calls to NumPy with potential for further optimisations. Ein 
reconciles the readability of comprehension-style definitions with the 
capabilities of existing array frameworks.

====

Stephen Kell (King's College London)
March 27, 2025 at 14:00 in S510

How debuggable is your (compiler-optimised) program?

Abstract: Source-level debugging of compiled code only works when 
compilers generate the necessary metadata. Currently, that means it 
rarely works well, at least in optimising ahead-of-time compilers like 
LLVM and GCC. I'll give an overview of how compiler-generated metadata 
enables source-level debugging, the challenges of making it work for 
optimised code, and our recent work on doing better. Whereas compilers 
have so far taken a "best-effort" approach with no particular 
correctness criterion, I'll outline a correctness condition for local 
variable information that seems to balance the relevant trade-offs. I'll 
then describe a tool we've built that can use this to mechanically find 
valid LLVM bugs capturing avoidable losses or corruptions of debug info. 
A theme will be how the textbook framing of compiler optimisations as 
"eliminating" code or variables could be more constructively thought of 
as "residualising" them into debug info; I'll finish with some thoughts 
on what that could mean for how compilers are built. All this is joint 
work with J. Ryan Stinnett.


-- 
Jan Kofron, Ph.D.
Associate Professor
Department of Distributed and Dependable Systems
Faculty of Mathematics and Physics
Charles University
Malostranske namesti 25
118 00 Praha 1, Czech Republic
Phone: +420 95155 4285
http://d3s.mff.cuni.cz/~kofron
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 236 bytes
Desc: OpenPGP digital signature
URL: <http://d3s.mff.cuni.cz/pipermail/seminar/attachments/20250324/24df6d3e/attachment.sig>


More information about the Seminar mailing list