Tips and Tricks and Other
Various
- Code Snippets - useful small functions.
- Project Euler newLISP - the first 20 from projecteuler.net/problems.
- Install newLISP as an HTTP and net-eval server process on Mac OS X using launchd
- Combined OS shell and newLISP shell with NLS. Now working on all platforms.
- Write FOOP (Functional Object Oriented Programming) applications. The Mandelbrot set as a FOOP application using complex numbers. NOTE that FOOP changed with version 10.2.0 (March 2010).
Web
- Write CGI scripts in newLISP: Mandelbrot, environment, read form data, syntax highligher, this site on newLISP Wiki
- AJAX and newLISP: do asynchronous webpage updates with newLISP CGI scripting.
- A small CGI example how to set cookies: Cookie example.
- S-expressions to XML - translate LISP s-expressions into XML.
- Artful Code tutorial: Working with XML in newLISP
- File Upload Script - a newLISP CGI script for uploading files from a HTML form.
- Translate JSON data into LISP s-expressions. Now a standard module.
- Translate IP numbers to country of origin.
- A patch file is available from www.tprimke.net adding Table of Contents and Rename Page features to newLISP Wiki.
Connect to other languages and libraries
- Tk and newLISP - run graphics Tcl/Tk using this wrapper.
- Write graphics programs with OpenGL using simple FFI or using the extended FFI.
- Embedded Binary - embed binary machine code into newLISP source.
- How to write a C-import function taking a string and returning an integer array CountCharacters. For more details on working with C-libraries read chapter 23 in Code Patterns in newLISP
- Windows Event Loop - write GUI programs for MS Windows.
- Register a callback with newLISP library (newlisp.dll, newlisp.dylib, newlisp.so).
Network Security
- A network packet sniffer written with libpcap and newLISP.
- A network scanner. newLISP v.10.2.8 or later is required.
- Raw sockets with net-packet when using newLISP for Mac OS X, BSDs and Linux!
- Library to verify YubiKey one time passwords by Kirill. Also available as a module in the Various section.
Parallel and Distributed Processing
- Parallel web page retrieval is easy using the spawn function. The program googles a search term then counts all the words in 20 pages retrieved. Try the demo. Even on a single core CPU this is much faster than working sequentially.
- MapReduce - Distributed computing, map/reduce style example of calculating and reducing word counts from different documents. Note that newLISP does this without any modules to import. The built-in function net-eval takes care of mapping all network communications including distribution of code to external nodes.
Science, Theory and Math
- Closures, Contexts and Stateful Functions explains the difference between Scheme Closures and newLISP namespaces, called contexts and shows a method for writing stateful functions via in-place modification.
- The Why of Y in newLISP. Richard P. Gabriel's Y-function derivation modified for newLISP.
- Recursion - iteration - generator a comparison of recursive, iterator and generator algorithms using the Fibonacci algorithm as example.
- Mergesort benchmark against Perl, Python, Ruby and PHP.