-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Welcome to the muclr wiki!
The MUCLR system/package is broken down into several separate integrated parts.
Most likely, the only registrar we'll need will be the official. It will be a sub-system of its own and function as a server that accepts registration requests from MUCLR Platforms as well as requests for lists of registered Platforms. We will make the source code available for anyone to run a non-canonical registrar, but it's difficult to see this as becoming necessary.
Any computer connected to the internet and capable of opening a server port can launch a MUCLR server. We refer to the MUCLR server object as a Platform. Optionally, a MUCLR Platform can be registered so that users of MUCLR will be able to look it up and connect with greater ease and efficiency.
See the API page for details about the blossoming MUCLR Application Program Interface.
The client package serves the end-user and features a few main functions. One of these will communicate with the Registrar, or with non-canonical registrars, to retrieve information on existing MUCLR Platforms that have been registered and are accepting connections. Another function of the client is, of course, to connect to MUCLR Platforms, send requests, process responses, and generally keep the client REPL in appropriate sync with the Platform REPL, comprised of its server's configuration, its users, and their manipulation of the shared space.
At all times, the Common Lisp user maintains his own REPL as a private and personal space. A Platform is rationally thought of as a shared REPL that connects each private REPL's user to one another. The degree to which one user is able to impact the Platform or other users is determined by a number of factors, including - among many others - programming of the Platform instance, manipulation of the shared REPL by other users, and user permissions specific to server specifications.