-
Notifications
You must be signed in to change notification settings - Fork 0
/
research.html
55 lines (42 loc) · 3.12 KB
/
research.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<!DOCTYPE html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
<link rel="stylesheet" href="/homepage.css">
<script type="text/javascript" src="hilbert.js" defer="true"></script>
</head>
<canvas id="hilbert"></canvas>
<root><p><ul class="menu"><li><a href="index.html">Home</a></li><li class="active"><a href="research.html">Research</a></li><li><a href="about.html">About</a></li><li><a href="blog.html">Blog</a></li></ul></p>
<h1>Research</h1>
<section><div><div><p>I studied programming languages in Martin Odersky's group at EPFL and worked on Scala, specifically pattern matching.
<a href="https://dblp.uni-trier.de/pers/hd/e/Emir:Burak">dblp</a></p>
<p>After I joined Google, I continued my study formal logic, type theory and category theory for programming and specifying program behavior.</p>
<p>Here are some artifacts:</p></div></div>
<h2>Pattern Matching</h2>
<p>Pattern matching and ML-style algebraic data types are now part of rust, Java and python3.</p>
<div><p><ul><li>Burak Emir.
<a href="https://infoscience.epfl.ch/record/109881">Object-oriented pattern matching.</a> Thesis, EPFL Lausanne, 2007. </li>
<li>Burak Emir, Martin Odersky, John Williams.
<a href="https://infoscience.epfl.ch/record/98468">Matching objects with patterns.</a> ECOOP 2007. </li>
<li>Burak Emir, Qin Ma, Martin Odersky.
<a href="https://infoscience.epfl.ch/record/108817?ln=en">Translation Correctness for First-Order Object-Oriented Pattern Matching</a>. APLAS 2007</li></ul></p></div>
<div><h2>Constrained Polymorphism</h2></div>
<div><p>During an internship at Microsoft Research in Cambridge, I got to apply some Scala techniques to C#.
The results are described here: </p></div>
<div><p><ul><li>Burak Emir, Andrew Kennedy, Claudio Russo, Dachuan Yu.
<a href="https://www.microsoft.com/en-us/research/publication/variance-and-generalized-constraints-for-c-generics/">Variance and Generalized Constraints for C# generics</a>. ECOOP 2006</li></ul></p>
<p>Variance annotations made it into C# 4.0 later.</p></div>
<div><h2>Symbolic Execution</h2></div>
<div><p>At Google (2010?), I got a 20% intern sponsorship to host
<a href="http://www.stefanbucur.net/">Stefan Bucur</a> on a project related to
<a href="http://cloud9.epfl.ch/people">Cloud9</a>. We tried symbolic execution as an
alternative to fuzzing to look for vulnerabilities in Chrome. This did not work well at the time,
though we learned a lot (this was before Google had a consistent cloud offering). Stefan
joined Google later and is working in security.</p></div>
<div><h2>Systems, Languages, Types, Logic</h2></div>
<p>There are many kinds of scientific and theoretical knowledge that have deep practical applications.</p>
<p>This is especially true in the context of distributed systems. I am preparing a few artifacts around these topics that I will publish here.</p></section>
</root>
<img src="https://puzzle.burakemir.ch/track/research.html/1x1.png"></img>
</html>