# Scheme

To use this language, use the class "language-scheme".

## Comments

    ; This is a comment

## Booleans

    #t
    #f

## Strings

    "two \"quotes\" within"

## Functions

    (lambda (x) (+ x 3))
    (apply vector 'a 'b '(c d e))

## Full example

    ;; Calculation of Hofstadter's male and female sequences as a list of pairs

    (define (hofstadter-male-female n)
      (letrec ((female (lambda (n)
    		     (if (= n 0)
    			 1
    			 (- n (male (female (- n 1)))))))
    	   (male (lambda (n)
    		   (if (= n 0)
    		       0
    		       (- n (female (male (- n 1))))))))
        (let loop ((i 0))
          (if (> i n)
    	  '()
    	  (cons (cons (female i)
    		      (male i))
    		(loop (+ i 1)))))))

    (hofstadter-male-female 8)

## Known failures

There are certain edge cases where Prism will fail. There are always such cases in every regex-based syntax highlighter. However, Prism dares to be open and honest about them. If a failure is listed here, it doesn’t mean it will never be fixed. This is more of a “known bugs” list, just with a certain type of bug.

### Comment-like substrings

    "foo ; bar"