diff --git a/Doc/lib/libreadline.tex b/Doc/lib/libreadline.tex
index 24dd2a3..cd2a80a 100644
--- a/Doc/lib/libreadline.tex
+++ b/Doc/lib/libreadline.tex
@@ -15,6 +15,10 @@
 The \module{readline} module defines the following functions:
 
 
+\begin{funcdesc}{readline}{\optional{prompt}}
+Get a single line of input from the user.
+\end{funcdesc}
+
 \begin{funcdesc}{parse_and_bind}{string}
 Parse and execute single line of a readline init file.
 \end{funcdesc}
@@ -154,3 +158,4 @@
 atexit.register(readline.write_history_file, histfile)
 del os, histfile
 \end{verbatim}
+
diff --git a/Misc/NEWS b/Misc/NEWS
index 7215483..b04495f 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -207,6 +207,11 @@
 Extension modules
 -----------------
 
+- The readline module now exposes the readline() function to the Python
+  programmer.  readline.readline() should be a drop-in replacement for
+  raw_input() but coupled with the other readline module functionality allow
+  programmers to offer history and input recall to their users.
+
 - operator.isMappingType() and operator.isSequenceType() now give
   fewer false positives.
 
diff --git a/Modules/readline.c b/Modules/readline.c
index 37baf87..50ceef4 100644
--- a/Modules/readline.c
+++ b/Modules/readline.c
@@ -32,6 +32,28 @@
 #endif
 
 
+/* Exported function to get a line from the user */
+
+static PyObject *
+py_readline(PyObject *self, PyObject *args)
+{
+	char *s = NULL;
+	char *line = NULL;
+	if (!PyArg_ParseTuple(args, "|s:readline", &s))
+		return NULL;
+	line = readline(s);
+	if (line == NULL) {
+		PyErr_SetString(PyExc_EOFError, "End of file on input");
+		return NULL;
+	}
+	return PyString_FromString(line);
+}
+
+PyDoc_STRVAR(doc_py_readline,
+"readline([prompt]) -> line\n\
+Prompt for and read a line of text.  Raise EOFError on EOF.");
+
+
 /* Exported function to send one line to readline's init file parser */
 
 static PyObject *
@@ -468,6 +490,7 @@
 
 static struct PyMethodDef readline_methods[] =
 {
+	{"readline", py_readline, METH_VARARGS, doc_py_readline},
 	{"parse_and_bind", parse_and_bind, METH_VARARGS, doc_parse_and_bind},
 	{"get_line_buffer", get_line_buffer, METH_NOARGS, doc_get_line_buffer},
 	{"insert_text", insert_text, METH_VARARGS, doc_insert_text},
