java generics are turing complete
play

Java Generics Are Turing Complete Radu Grigore September 2017 - PowerPoint PPT Presentation

Java Generics Are Turing Complete Radu Grigore September 2017 Highlights Why do we care? . . . . . . distinguished at ECOOP 2016 But . . . Java is messy! FOOL 2007 Problem Input infinite directed graph two distinguished vertices t


  1. Java Generics Are Turing Complete Radu Grigore September 2017 Highlights

  2. Why do we care?

  3. . . . . . .

  4. distinguished at ECOOP 2016

  5. But . . . Java is messy!

  6. FOOL 2007

  7. Problem Input infinite directed graph two distinguished vertices t and t ′ Output Is there a finite path t � t ′ in the given graph?

  8. Vertices: Types f ( g ( x ) , h ())

  9. Vertices: Types f 2 ( g 1 ( x ) , h 0 ())

  10. Vertices: Types f gxh

  11. Vertices: Types x , y , ...are variables C , D , ...have arity 1 Z has arity 0 Example vertex/type: CDCCDEZ s , t , ...are meta-variables, ranging over types

  12. Arcs: Inheritance Rules the inheritance rule Cx < :: t ( x ) means that, for all ground types s , there is an arc Cs → t ( s )

  13. Arcs: Inheritance Rules the inheritance rule Cx < :: t ( x ) means that, for all ground types s , there is an arc Cs → t ( s ) class table � set of inheritance rules

  14. Arcs: Contravariance if s � t then Ct → Cs

  15. Theorem It is undecidable whether t � t ′ according to a given unambiguous class table.

  16. Theorem It is undecidable whether t � t ′ according to a given unambiguous class table. Turing machine input tape subtype query class table type checker Y/N/?

  17. Theorem It is undecidable whether t � t ′ according to a given unambiguous class table. applies to Java! Turing machine input tape subtype query class table type checker Y/N/?

  18. eof

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend