- Dynamic
Dynamic mode is useful for development. Page sources can be edited and changes are immediately reflected in the site. The page is served by an FCGI program. This FCGI program contains compiled versions of recently referenced pages from the site. When the source for a compiled page changes or if a new page that is not already compiled into the FCGI program is requested then:
- The LSP page is translated into L source code
- The L compiler is run to compile the page to LLVM bitcode
- The LLVM bitcode is loaded and JIT compiled into the FCGI program
- The newly compiled page code fulfils the HTTP request
- Static
Static mode is useful for a live site. A static mode LSP site is compiled into a single FCGI program that holds all the pages for the site. In static mode the site must be explicitly rebuilt if page sources change and referencing a page not compiled into the FCGI program results in an error. Static mode is faster as the file system need not be accessed to determine whether a page needs to be compiled and safer because dynamic code generation is disabled.
The site is hosted on a Xen VM running Ubuntu Linux.