Write a Blog >>
SPLASH 2017
Sun 22 - Fri 27 October 2017 Vancouver, Canada
Mon 23 Oct 2017 11:00 - 11:30 at Kensington - Languages and Semantics

The Liskov Substitution Principle states, among other constraints, that a subtype is not substitutable for its super type if it strengthens its operations’ preconditions, or weakens its operations’ postconditions. We found that students in two subsequent courses had trouble learning these rules. Their major stumbling block appeared to be remembering which condition (pre- or post-) could be strengthened and which could be weakened. We developed a simple visual reminder to help: A method is happy if it is substitutable—A smile is wider at the top than at the bottom, suggesting weaker/looser/wider pre-conditions, and stronger/tighter/narrower post conditions.; A method is sad if it isn’t substitutable—a frown is narrower at the top, suggesting stronger/tighter/narrower preconditions, and wider at the bottom, suggesting weaker/looser/wider postconditions. Though the technique is far from perfect, we found that it allowed students to move on to the more interesting design questions around LSP.

Mon 23 Oct

Displayed time zone: Tijuana, Baja California change

10:30 - 12:00
Languages and SemanticsSPLASH-E at Kensington
10:30
30m
Talk
(CER) Early Experience with Grace
SPLASH-E
Andrew Black Portland State University, Kim Bruce Pomona College
File Attached
11:00
30m
Talk
(CER) Making the Liskov Substitution Principle Happy and Sad
SPLASH-E
Elisa Baniassad University of British Columbia
File Attached
11:30
30m
Talk
(CSES) Student Understanding of Aliasing and Procedure Calls
SPLASH-E
Preston Tunnell Wilson Brown University, Kathi Fisler Brown University, Shriram Krishnamurthi Brown University, USA
File Attached