Improving CL implementations with cl-test-grid

Sep. 25th, 2012 | 02:11 pm

Anton Vodonosov has been doing fantastic work with cl-test-grid. Check out his message to the ECL maintainer showing which library fixes will result in the most bang for the buck.
Tags:

Link | Leave a comment | Add to Memories | Share

Cruise ship leaves Casco Bay

Sep. 23rd, 2012 | 09:15 pm

Enchanting departure

Link | Leave a comment | Add to Memories | Share

Common Lisp quiz

Sep. 18th, 2012 | 02:42 pm

A few years ago I started collecting random bits of Common Lisp trivia to use for a "purity test" of sorts. Progress has stalled, and some of the bits have turned into lisptips. I don't think I'll ever finish it, so here is the unfinished work for your amusement and/or enlightenment.

======== backquote-comma-dot ====

Something about ,. vs. ,@ in backquotes.


======== binding-streams ====

Which standardized stream variable may not be bound or assigned?

- *debug-io*

- *terminal-io*

- *query-io*

- None of the above

Ref: 21.1.2: "User programs may assign or bind any standardized stream
variable except *terminal-io*."

======== boa-acronym ====

For a "BOA constructor", what does BOA stand for?

- Beginning Of Array

- By Order of Arguments

- Bounded Operation Accessor

- Bidirectional Open Atom

Ref: defstruct




======== char-code ====

What value is acceptable as the return value of (char-int #\a)?

- 32

- 97

- 10

- All of the above

======== cl-package-constraints-title ====

What is the title of section 11.1.2.1.2 in the CLHS?

- Constraints on the COMMON-LISP Package for Conforming Programs

- LOOP Value Accumulation Clauses

- Examples of Suppressing Keyword Argument Checking

- None of the above

Ref: 11.1.2.1.2

======== cl-user-default-packages ====

What packages are in the COMMON-LISP-USER package use list?

- It is implementation-defined and no specific packages are specified

- It is implementation-defined but must include the COMMON-LISP
  package

- No packages

- COMMON-LISP and one of EXT, SYS, or IMPL

Ref: 11.1.2.2

======== deftype-optional-default ====

What is the default value for optional and keyword arguments in
DEFTYPE where no default is explicitly provided in the deftype lambda
list?

- T

- NIL

- *

- None of the above

Ref: deftype

======== digit-char-p ====

What function will return the integer 5 given the character #\5?

- PARSE-INTEGER

- CHAR-DIGIT-WEIGHT

- DIGIT-CHAR-P

- CHAR-CODE

Ref: digit-char-p

======== dot-dot-dot-reading ====

11:01 [tcr] There's possibly another one: "Why is
          '.. or '... not valid syntax to denote a symbol?" Answer: it's
          explicitly forbidden so READ will choke on the attempt to read print
          representations of forms where the printer introduced abbreviations
          due to *print-length*/*print-level*
11:04 [tcr]
          http://www.lispworks.com/documentation/HyperSpec/Body/02_di.htm

======== eql-is-default ====

What is the default test function for most operations? [be more
precise, maybe per 17.2.1]

- EQ

- EQL

- EQUALP

- =

Ref: 17.2.1

======== file-position-designator ====

Which of the following is not a file position designator?

- 42

- :start

- :end

- None of the above

======== format-empty-curlybrace ====

In a format string, what does "~{~}" mean?

- Nothing, it is an error to have nothing between ~{ and ~}

- Causes an infinite loop

- Uses the next argument to FORMAT as the internal format control
  string

- None of the above

Ref: 22.3.7.4

======== format-hash-arg ====

What does (format nil "~#,vD" #\8 0 0 0) return?

- "8880"

- "0008"

- "0"

- None of the above


======== get-first-element ====

Which of the following forms do NOT return the first element of LIST?

- (first list)

- (car list)

- (nth 1 list)

- None of the above

Ref: nth

======== implicit-tagbody ====

Which of the following macros does NOT have an implicit PROGN?

- DEFUN

- WHEN

- DOLIST

- None of the above

Ref: tagbody page

======== longest-function-name ====

What is the longest exported symbol name in the COMMON-LISP package?

- UPDATE-INSTANCE-FOR-REDEFINED-CLASS

- UPDATE-INSTANCE-FOR-DIFFERENT-CLASS

======== make-package-defaults ====

If you do not provide an explicit :USE argument to MAKE-PACKAGE, what
can you say about the list of packages that the newly created package
uses?

- The list consists only of the COMMON-LISP package.

- The list is implementation-dependent but always includes the
  COMMON-LISP pacakge.

- The list might be empty.

- None of the above.


======== not-a-function ====

Which of the following symbols does not name a Common Lisp function?

- PAIRLIS

- REVAPPEND

- CONJUGATE

- None of the above

Other possibilities: SCHAR, PHASE, MAKE-INSTANCES-OBSOLETE,
MAKE-LOAD-FORM-SAVING-SLOTS (from tcr)

======== not-a-string-designator ====

Which of the following is NOT a string designator?

- :foo

- #\x

- #xBA5

- None of the above

Ref: glossary for string designator, string function

======== odd-forms ====

Which form is illegal syntax? [not really syntax, but]

- (defvar *foo*)

- (aref array)

- (*)

- None of the above


======== sharpquote-let ====

13:51 <stassats`> i like (let (#'1) (+ function 2)) => 3
13:51 <pjb> (let (#'1 '2) (+ function quote))

======== zero-dimensional-arrays ====

Something about (aref thing) or (setf (aref thing) 42), and
(make-array nil :initial-element 42), etc.

Tags:

Link | Leave a comment | Add to Memories | Share

Status update on Nikodemus's crowdfunded SBCL work

Sep. 10th, 2012 | 02:31 pm

Any status update that starts off like this is bound to be something of a bummer:

A long overdue status update, and an apology.

I’m very sorry about my lack of communication on this project. I’m not terribly proud about all other aspects of the way I’ve handled things either, but failure to let you people know how thing stand is something I’m actively ashamed of. I apologize.

This is me trying to fix that.

You can read the whole update on indiegogo.

Tags:

Link | Leave a comment | Add to Memories | Share

Sunset in Bug Light Park, South Portland, Maine

Sep. 3rd, 2012 | 11:27 am

Sunset in the Bug Light Park

Link | Leave a comment | Add to Memories | Share

West Musquash Moonrise

Aug. 27th, 2012 | 07:57 am

West Musquash Moonrise

Link | Leave a comment {2} | Add to Memories | Share

CL asteroids

Aug. 20th, 2012 | 11:09 am

Andy Driver's take on asteroids using Lispbuilder-SDL is, though unfinished, neat to see.
Tags:

Link | Leave a comment {1} | Add to Memories | Share

start-project

Aug. 17th, 2012 | 10:14 am

start-project (SBCL-only at the moment) looks neat.

A side note: I currently put everything in ~/quicklisp/local-projects/ and avoid configuring ASDF entirely.
Tags:

Link | Leave a comment | Add to Memories | Share

Portland Head Light

Jul. 31st, 2012 | 10:19 pm

Portland Head Light

Link | Leave a comment | Add to Memories | Share

Erik

Jul. 21st, 2012 | 11:04 pm

One-light portrait

Link | Leave a comment | Add to Memories | Share