Skip to content

#11 Suhail Shergill on Reflection without Remorse

Photo of
Hosted By
James M. and David K.


Important: please arrive before 7pm, which is when the front door locks! If you arrive after 7pm, use the keypad beside the outside door and buzz 8882 to be let in.


Suhail will be presenting Reflection without Remorse ( by Atze van der Ploeg and Oleg Kiselyov.


What does list append, tree substitution, monadic binds for recursive structures have in common? This paper illustrates how all three operations fall under a common pattern of operations which perform algorithmically worse when left-associated (as opposed to when right-associated). Continuation passing style (CPS) is a well known cure to this problem, but the advantages dwindle when we have to observe/modify intermediate results before continuing with the rest of the "build" operations (list append etc).

This paper presents a solution which is just as general as CPS, but which doesn't fall victim to the same limitation. This talk will focus on illustrating the root cause of the problem and the essence of the solution. The talk will borrow haskell code examples from the paper but knowledge of haskell will not be presupposed. Knowledge of algebraic data types would be helpful, but not strictly necessary.

Paper Link:

Doors open at 6:30 pm, presentation will begin at 7:00 pm. There will be food and refreshments provided by Shopify.


Suhail Shergill is the Director of Innovation at Mediative (a division of YP Canada) and heads the research and development efforts there. With an academic background in machine learning, software engineering and programming languages Suhail brings an eclectic mix of skills to the table to build robust and scalable software.

80 Spadina Ave. 4th Floor · Toronto, ON