fork(2) download
  1. ; head and tail
  2.  
  3. (define (read-line . port)
  4. (define (eat p c)
  5. (if (and (not (eof-object? (peek-char p)))
  6. (char=? (peek-char p) c))
  7. (read-char p)))
  8. (let ((p (if (null? port) (current-input-port) (car port))))
  9. (let loop ((c (read-char p)) (line '()))
  10. (cond ((eof-object? c) (if (null? line) c (list->string (reverse line))))
  11. ((char=? #\newline c) (eat p #\return) (list->string (reverse line)))
  12. ((char=? #\return c) (eat p #\newline) (list->string (reverse line)))
  13. (else (loop (read-char p) (cons c line)))))))
  14.  
  15. (define (head&tail)
  16. (let ((prev (read-line)))
  17. (display prev) (newline)
  18. (let loop ((line (read-line)) (prev prev))
  19. (if (eof-object? line)
  20. (begin (display prev) (newline))
  21. (loop (read-line) line)))))
  22.  
  23. (head&tail)
Success #stdin #stdout 0s 7268KB
stdin
Four score and seven years ago our fathers brought forth
on this continent a new nation, conceived in Liberty, and
dedicated to the proposition that all men are created equal.

Now we are engaged in a great civil war, testing whether
that nation, or any nation, so conceived and so dedicated,
can long endure. We are met on a great battle-field of that
war.  We have come to dedicate a portion of that field, as
a final resting place for those who here gave their lives
that that nation might live.  It is altogether fitting and
proper that we should do this.

But, in a larger sense, we can not dedicate -- we can not
consecrate -- we can not hallow -- this ground.  The brave
men, living and dead, who struggled here, have consecrated
it, far above our poor power to add or detract.  The world
will little note, nor long remember what we say here, but
it can never forget what they did here.  It is for us the
living, rather, to be dedicated here to the unfinished work
which they who fought here so nobly advanced.  It is rather
for us to be here dedicated to the great task remaining
before us -- that from these honored dead we take increased
devotion to that cause for which they gave the last full
measure of devotion -- that we here highly resolve that
these dead shall not have died in vain -- that this nation,
under God, shall have a new birth of freedom -- and that
government of the people, by the people, for the people,
shall not perish from the earth.
stdout
Four score and seven years ago our fathers brought forth
shall not perish from the earth.