{"id":143,"date":"2021-02-05T20:42:00","date_gmt":"2021-02-05T20:42:00","guid":{"rendered":"https:\/\/blogs.qub.ac.uk\/dipsa\/invited-talk-metaprogramming-in-jupyter-notebooks\/"},"modified":"2021-02-05T20:42:00","modified_gmt":"2021-02-05T20:42:00","slug":"invited-talk-metaprogramming-in-jupyter-notebooks","status":"publish","type":"post","link":"https:\/\/blogs.qub.ac.uk\/dipsa\/invited-talk-metaprogramming-in-jupyter-notebooks\/","title":{"rendered":"Invited Talk: Metaprogramming in Jupyter Notebooks &#8211; Dr Jeremy Singer"},"content":{"rendered":"\n<p>Dr Jeremy Singer, University of Glasgow<br>25 February 2021<\/p>\n\n\n\n<p>Abstract:<br>Love &#8217;em or hate &#8217;em, interactive computational notebooks are here to stay as a mainstream code development medium. In particular, the Jupyter&nbsp;system is widely used by the data science community. This presentation explores some use cases for programmatic introspection of a Jupyter&nbsp;notebook from within a notebook itself. We sketch a possible reflection API for Jupyter and describe how its implementation is complicated by the&nbsp;under-the-hood message flows of the Jupyter distributed system architecture.<\/p>\n\n\n\n<p><br>Bio:<br>Jeremy Singer is a senior lecturer in the School of Computing Science at the University of Glasgow, where he has worked for the past 10 years. Jeremy&#8217;s research interests include programming language compilers and runtimes, memory management, manycore parallelism, and distributed systems. He currently co-leads the EPSRC-funded Capable VMs project. Jeremy is the author of the textbook &#8220;Operating System Foundations with Linux on the Raspberry Pi&#8221; and lead educator of the &#8220;Functional Programming in Haskell&#8221; massive open online course.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dr Jeremy Singer, University of Glasgow25 February 2021 Abstract:Love &#8217;em or hate &#8217;em, interactive computational notebooks are here to stay as a mainstream code development medium. In particular, the Jupyter&nbsp;system is widely used by the data science community. This presentation explores some use cases for programmatic introspection of a Jupyter&nbsp;notebook from within a notebook itself. [&hellip;]<\/p>\n","protected":false},"author":974,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[33],"class_list":{"0":"post-143","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-uncategorised","7":"tag-seminars","8":"czr-hentry"},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/blogs.qub.ac.uk\/dipsa\/wp-json\/wp\/v2\/posts\/143","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.qub.ac.uk\/dipsa\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.qub.ac.uk\/dipsa\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.qub.ac.uk\/dipsa\/wp-json\/wp\/v2\/users\/974"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.qub.ac.uk\/dipsa\/wp-json\/wp\/v2\/comments?post=143"}],"version-history":[{"count":0,"href":"https:\/\/blogs.qub.ac.uk\/dipsa\/wp-json\/wp\/v2\/posts\/143\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.qub.ac.uk\/dipsa\/wp-json\/wp\/v2\/media?parent=143"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.qub.ac.uk\/dipsa\/wp-json\/wp\/v2\/categories?post=143"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.qub.ac.uk\/dipsa\/wp-json\/wp\/v2\/tags?post=143"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}