ryukinix / lisp-chat

An experimental minimal chat written in Common Lisp

Home Page:https://lerax.me/lisp-chat

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

lisp-chat

Quicklisp dist

Lisp Chat

An experimental chat irc-like written in Lisp.

lisp-chat-screenshot

Installation

Install [roswell][ros] and add ~/.roswell/bin/ to the PATH variable.

After that just type:

ros install ryukinix/lisp-chat

Lisp-chat it's on Quicklisp as well, tested on the following implementations:

  • SBCL
  • CCL
  • ECL

Usage

Load the server

$ lisp-chat-server localhost

Create a client

$ lisp-chat localhost

As alternative of localhost you can use server.lerax.me which points to a lisp-chat server running in the port 5558.

Alternative clients

If you want test this and don't have the Lisp requested, I have those alternatives for you:

  • Terminal text-based python client
  • Terminal ncurses python client
  • Netcat client (wtf?)

On Python client, I wrote in a way only using ths stdlib avoiding pain to handle the dependency hell, so you can just call that:

$ python client.py

So finally... netcat. Yes! You can even just use netcat! An user called Chris in past days just logged in the server with the following message:

|16:30:37| [Chris]: Used netcad
|16:30:41| [Chris]: netcat*
|16:30:50| [Chris]: bye

So you can type netcat server.lerax.me 5558 and go on! I tested on my machine and works fine! The main reason is because the communication between server and client just use raw data. For better synchronization with text data from server while you typing, I suggest you to use a readline wrapper like rlwrap calling as rlwrap netcat server.lerax.me 5558.

About

An experimental minimal chat written in Common Lisp

https://lerax.me/lisp-chat

License:MIT License


Languages

Language:Common Lisp 76.2%Language:Python 22.4%Language:Dockerfile 0.9%Language:Makefile 0.5%