Skip to content

phlo46/lisp-timetable

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Timetable app written in Common Lisp

My first Common Lisp app.

It schedules subjects for 24 classes in my fictional Vietnamese secondary school.

This project is a throw-away prototype!

Web libraries

Features

When you load the server for the first time, it automatically renders subjects for 24 classes based on these constraints:

  • Every class has 4 Math periods/week, 4 Literature/week, 2 Physical Education/week.
  • No subject appears 3 or more times a day
  • Subjects that have 2-3 periods per week appear exactly once a day
  • No day has 2 Math periods and 2 Literature periods.
  • Every class has one day having consecutive Math periods and one day having consecutive Literature periods.

Usage

  1. Make sure you already setup Lisp development environment by following:

https://lispcookbook.github.io/cl-cookbook/getting-started.html

  1. Clone this repo where Quicklisp can find it:

git clone git@github.com:lnguyen46/lisp-timetable.git ~/common-lisp/

  1. Jump to REPL and type:

(ql:quickload :time-table)

(hunchentoot:start (make-instance 'hunchentoot:easy-acceptor :port 4242))

  1. Go to: http://127.0.0.1:4242/ to see the result.

Screenshot

About

Timetable app written in Common Lisp

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published