;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; This file is part of "NOVA": NOVA = search + COCOMO tools ; Copyright, 2008, Tim Menzies tim@menzies.us ; ; NOVA is free software: you can redistribute it and/or modify ; it under the terms of the GNU General Public License as published by ; the Free Software Foundation, either version 3 of the License, or ; (at your option) any later version. ; ; NOVA is distributed in the hope that it will be useful, ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; GNU General Public License for more details. ; You should have received a copy of the GNU General Public License ; a long with NOVA. If not, see . ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;; copyright and usage stuff. (defun gpl3-string (what when who email) (format nil "This file is part of ~a: NOVA = search + COCOMO tools Copyright, ~a, ~a ~a. ~a is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. ~a is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY, without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License a long with ~a. If not, see ." what when who email what what what)) (defun about-string (what when who email) (format nil "~a Copyright (C) ~a ~a ~a This program comes with ABSOLUTELY NO WARRANTY- for details type (copyright). This is free software, and you are welcome to redistribute it under certain conditions; type (copyright)," what when who email)) (defun hello () (let* ((c5 "-----") (c20 (format nil "~a~a~a~a" c5 c5 c5 c5)) (c50 (format nil "~a~a~a~a" c20 c20 c5 c5))) (format t "~%~a~%Welcome to ~a~%~a" c50 (about) c50))) (defmacro geta (key list &optional (default nil)) "Return a value from an assocation 'list'' of, if absent, some 'default' value." `(or (cdr (assoc ,key ,list)) ,default)) (let (last-loaded) (defmacro l (&optional (f last-loaded)) `(progn (setf last-loaded ',f) (load (string-downcase (format nil "~a.lisp" ',f))) ',f)))