I am keen to work with strong students interested in the theory and practice of programming languages, particularly in contributions that combine theory with practice. My interests are listed on my home page. If you would like to work with me, please get in touch. When you write, please explain your relevant background and interests in your first paragraph, enough so I can tell that you are interested in my research area and that you are qualified to work in that area.
I receive a large number of emails where people simply forward me their cv's and ask if I am interested in working with them; these will be treated as spam.
Information on applying for a PhD at Edindburgh is here. If your interests include concurrency and distribution, I recommend you apply through the Pervasive Parallelism CDT, and if your interests include databases or big data, I recommend you apply through the Data Science CDT. These are four-year programs that each fund ten students a year from the UK and EU. The School also has a small number of three-year scholarships available for students outside the UK and EU, but competition for these is strong and you need to be exceptionally well qualified. Be sure to submit an application well before the end of the year if you want to be considered for such a scholarship.
When you apply, pay particular attention to the research proposal. The purpose of this is not to fix an area of study, but to assess your ability to select a suitable research problem, to justify why it is interesting, and to express yourself clearly.
Sorry, I have no funding for internships for overseas students.
If you are an undergraduate at the University of Edinburgh, LFCS funds a small number of summer internships. See the first two paragraphs under "Interested in applying for a PhD?", above.