Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
Norman Ramsey
[go: Go Back, main page]

Want to work harder than you knew you could and learn more than you imagined was possible? Consider COMP 40!

Norman Ramsey

[A picture of Norman in July] Send email to nr@cs.tufts.edu.
Send physical documents to my postal address.
If you come yourself you'll want directions.
Telephone +1 617 627 4923.
Skype (chat preferred): norman-ramsey
AIM: norman62ramsey
Yahoo chat: norman_ramsey
Fax +1 617 627 2227 (but if you can, scan and email instead)
My vita and public key (now with photo!) are online.

I type 75 words per minute. We are typists first, so test yourself.
     
On this page:
  • Research
  • Papers
  • Teaching
  • For students
  • About me
  • Research

    My research interests are broad, but grounded in programming languages. I like programming languages because there is nothing like a good language to help us express computations precisely, in ways that we can reason about them, while still keeping things at a high level.

    I focus on reusable, low-level programming-language infrastructure; I want to make it easy and cheap to build the programming languages of the future. I also work in functional programming and programming-language design, including the design of special-purpose languages for solving problems in distributed systems.

    My most recent work has been on reusable back ends and optimization libraries, which has been applied to the increasingly misnamed Glasgow Haskell Compiler (GHC). My research is currently in transition: I am working on or interested in compilers; interpreters; precise, machine-checkable, composable specifications for programming assignments; algorithms and infrastructure for managing replicated data; and distributed version control.

    Selected papers

    I have collected both highly significant and recent papers. Links are to abstracts so you can check out the topic without downloading a monster. For a complete view, including older work, see my publications list.

    Five most significant papers

    Five other significant papers

    Other recent papers

    These are some recent papers not listed above. They are in chronological order, so the most recent work is at the bottom.
    For a complete view, including older work, see my publications list.

    The ACM requires this disclaimer:

    The documents contained in these pages are included to ensure timely dissemination of scholarly and technical work on a non-commercial basis. Copyright and all rights therein are maintained by the authors or by other copyright holders, notwithstanding that they have offered their works here electronically. It is understood that all persons copying this information will adhere to the terms and constraints invoked by each author's copyright. These works may not be reposted without the explicit permission of the copyright holder.

    Teaching

    In Fall 2011 I am teaching COMP 40 (Machine Structures and Assembly-Language Programming) and a new full-year, half-credt course on technical writing—COMP 150TW (The Engineering Method of Technical Writing).

    In Spring 2012 I am teaching COMP 105 (Programming Languages) as well as continuing The Engineering Method of Technical Writing.

    In the past, I have taught COMP 40 (Machine Structures and Assembly-Language Programming), COMP 105 (Programming Languages), COMP 150DAO (Dataflow Analysis and Optimization), and COMP 150FP (Advanced Functional Programming), as well as a good many courses at other universities that need not be named.

    Resources for Students

    Office hours for Fall 2011 are Mondays from 3:30–4:30, Thursdays from 2:00–3:00, and by appointment.

    I am always interested in discussing projects with students, and I often have several undergraduate or master's students working with me part-time.

    I have gathered material of interest to research students, including resources for writers, and how to give a talk.
    Undergraduate research students might also be interested, especially in my thoughts about admission to graduate programs. And I tell you what you need to give me (and when) if you want a letter of recommendation.

    About Me

    My professional home is in the Department of Computer Science at Tufts University. Some people think I'm a power user; others think I never sleep.

    I was program chair for ICFP '07.

    I no longer maintain a hot list; this is more of a random list. An interest in personal productivity and pointers from Benjamin Pierce and Phil Wadler got me to Inbox Zero on Wed 21 Feb 2007 at 6:00 PM. After serious lossage caused by various alarums and excursions, I recovered Zero at 6:30 PM on Mon 31 Dec 2007. It was a pleasure to start the New Year with an empty inbox! After starting at Tufts, I got a little behind; at the end of my first year, my email debt was over 600 messages. At the end of my third year, at 9:12 PM on Monday 23 May 2011, I recovered Zero once again, but I cheated—I put 600 messages from 2009 and 2010 into an email demilitarized zone. I signed the email charter; if you won't, I won't.

    I'm a Bellcore alumnus and a long-standing member of the Luxuriant Flowing Hair Club for Scientists, and I have an Erdös Number of 5. I've been seen wearing orange and black academic regalia. Despite these distinguished credentials, I'm not ashamed to subscribe to a magazine with a centerfold. A secret vice is that I used to answer programming questions for fun; at one time, I was the 40th most reputable contributor (out of over 100,000). Along the way I earned silver Specialist badges in C, Haskell, programming languages, functional programming, and a couple of other topics.

    Although it surprises some people, for over thirty years I have been a football fan. When it's not football season, I've been known to play Guild Wars. I also have a rare autographed copy of Ad Verbum. I try to avoid P. J. Brown's deadly sins. I'm married to a licensed psychologist and game designer. I've appeared onstage (and in various clubs) as a jazz pianist, as a dancer, but most often as a chorister. My wish-fulfillment dreams are of sleeping.