BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing and other objects, aspects, features, and advantages of the invention will become more apparent and better understood by referring to the following description taken in conjunction with the accompanying drawings, in which:
FIG. 1A is a block diagram depicting an embodiment of a network environment comprising client machines in communication with server machines;
FIG. 1B is a block diagram depicting an embodiment of a computer useful in connection with the methods and systems described herein;
FIG. 2A is a block diagram depicting one embodiment of a system for processing user input;
FIG. 2B is a screen shot depicting one embodiment of an interaction environment 110 accessed by a user via a media gateway;
FIG. 2C is a screen shot depicting one embodiment of a graphical user interface for associating an interaction environment with a level of permission;
FIGS. 2D and 2E are screen shots depicting user interfaces allowing a user to request information stored in a conversation object;
FIG. 2F is a block diagram depicting one embodiment of a number of users interacting with a plurality of systems for processing user input;
FIG. 3 through FIG. 27 are screen shots depicting various embodiments of a system for processing user input; and
FIG. 28A is a flow diagram depicting one embodiment of the steps taken in a method for processing user input;
FIG. 28B is a flow diagram depicting one embodiment of the steps taken to identify an expression type of a user-provided expression;
FIG. 28C is a flow diagram depicting one embodiment of the combinations of determinations which the semantic evaluator 134 may make in identifying an expression type;
FIG. 29A is a block diagram depicting another embodiment of a system for processing user input;
FIG. 29B is a block diagram depicting still another embodiment of a system for processing user input;
FIG. 30 is a flow diagram depicting one embodiment of the steps taken to process a user-provided resource;
FIG. 31A is a screen shot depicting one embodiment of a user interface element into which a page can be typed using a markup-language;
FIG. 31B is a screen shot depicting one embodiment of a user interface for specifying user preferences relating to user-provided resources;
FIG. 32 is a screen shot depicting one embodiment of a user interface element including a preview of a display of user-provided input;
FIG. 33 is a screen shot depicting one embodiment of a user interface element for displaying a page generated based on submitted user-input;
FIG. 34 is a screen shot depicting one embodiment of a user interface element for requesting from an interaction environment retrieval of user-provided input;
FIG. 35 is a flow diagram depicting one embodiment of the steps taken in a method for processing user input;
FIG. 36 is a block diagram depicting one embodiment of a system for hosting a programming environment;
FIG. 37A and 37B are screen shots depicting embodiments of user interface elements through which a user may provide program code to an interaction environment;
FIG. 38 is a flow diagram depicting one embodiment of the steps taken in a method for hosting a programming environment;
FIG. 39 is a block diagram depicting one embodiment of an information retrieval system for hosting a programming environment and processing user input;
FIG. 40 is a flow diagram depicting one embodiment of the steps taken in a method for hosting a programming environment and processing user input within an information retrieval system;
FIG. 41 is a block diagram depicting one embodiment of a system for receiving a user-defined display format and a user-identified computer program and displaying a user interface modified responsive to the received user input; and
FIG. 42 is a flow diagram depicting one embodiment of the steps taken in a method for receiving a user-defined display format and a user-identified computer program and displaying a user interface modified responsive to the received user input;
FIG. 43 is a screen shot depicting one embodiment of a system displaying an acknowledgement message to a user upon addition of user-provided input to the system;
FIG. 44 is a screen shot depicting one embodiment of a system recognizing a request for information within an expression;
FIG. 45 is a screen shot depicting one embodiment of a system recognizing an implicit command to add an expression to the system;
FIG. 46 is a screen shot depicting one embodiment of a system retrieving information requested in a natural language question;
FIG. 47 is a screen shot depicting one embodiment of a system for storing user-provided information;
FIG. 48 is a screen shot depicting one embodiment of a system for retrieving user-provided information;
FIG. 49 lists one embodiment of pseudo-code for programming language code in a system for supporting multiple conversations;
FIG. 50 is a block diagram of one embodiment of a system providing failover functionality by servers processing user input;
FIG. 51 is a block diagram of one embodiment of a system for accessing, by a server processing user input, a central database;
FIG. 52 is a block diagram depicting one embodiment of a server farm providing redundancy and scalability in a system for processing user input;
FIG. 53 is a screen shot depicting one embodiment of a user interface for receiving a user-provided resource;
FIG. 54 is a screen shot depicting another embodiment of a user interface element including a preview of a display of user-provided input;
FIG. 55 is a screen shot depicting another embodiment of a user interface element for displaying a page generated based on submitted user-input;
FIG. 56 is a screen shot depicting another embodiment of a user interface element for requesting from an interaction environment retrieval of user-provided input;
FIG. 57 is a screen shot depicting an embodiment of a what-you-see-is-what-you-get (WYSIWYG) user interface for receiving a user-provided resource;
FIG. 58 is a screen shot depicting an embodiment of a hypertext markup language (HTML) user interface for receiving a user-provided resource;
FIG. 59 is a flow diagram depicting one embodiment of the steps taken in a method for publishing a page including user-provided resources;
FIG. 60 is a flow diagram depicting one embodiment in the steps taken in a method for transforming a document from one format into a second format;
FIG. 61 is a screen shot depicting one embodiment of a user interface for receiving user-provided input;
FIG. 62 is a screen shot depicting one embodiment of a user interface for providing, by a user, programming code;
FIG. 63 is a screen shot depicting one embodiment of a user interface element into which a user has provided programming code;
FIG. 64 is a screen shot depicting one embodiment of a user interface displaying to a user an acknowledgement message confirming compilation of user-provided programming code;
FIG. 65 is a screen shot depicting one embodiment of a user interface displaying to a user an acknowledgement message confirming storage of user-provided programming code;
FIG. 66 is a screen shot depicting one embodiment of a user interface element displaying to the user an output resulting from execution of user-provided programming code;
FIG. 67 is a block diagram depicting one embodiment of an application including a client browser component and a server component;
FIG. 68 is a block diagram depicting one embodiment of a system in which JavaScript programming code is uploaded to a server;
FIG. 69 is a block diagram depicting one embodiment of a system for displaying a page for a user, the page including output resulting from an execution of user-provided programming code;
FIG. 70 is a screen shot depicting one embodiment of a page containing HTML and JavaScript;
FIG. 71 is a screen shot depicting one embodiment of a user interface element for providing, by a user, information for storage on a server;
FIG. 72 and FIG. 73 are screen shots depicting embodiments of a page including user-provided information;
FIG. 74 is a screen shot depicting one embodiment of a page including a user interface element for retrieving user-provided information;
FIG. 75 is a screen shot depicting one embodiment of a page displaying, to a user, retrieved information;
FIG. 76 is a screen shot depicting one embodiment of a chat interface for processing user input;
FIG. 77 is a screen shot depicting another embodiment of a chat interface for processing user input in which a user enters a command to store user input;
FIG. 78 is a screen shot depicting one embodiment of a modified chat interface reflecting the storage of user-provided input;
FIG. 79 is a screen shot depicting another embodiment of a modified chat interface reflecting the storage of user-provided input;
FIG. 80 is a screen shot depicting an embodiment of a user interface element for requesting a display of user-provided programming code;
FIG. 81 is a screen shot depicting an embodiment of a user interface element displaying user-provided programming code;
FIG. 82 is a screen shot depicting one embodiment of a user interface element for modifying displayed user-provided programming code; and
FIG. 83 is a screen shot depicting one embodiment of a user interface element allowing an administrator to modify programming code.