SRFI13からアイテムを手動でコピーして貼り付ける必要はありません。Racketに組み込まれています。実際、主要なSRFIライブラリのほとんどはRacketにバンドルされています:http://docs.racket-lang.org/srfi/index.html
Racketでr5rs言語を使用している場合は、次の行でSRFI13を取り込むことができます。
(#%require srfi/13)
奇妙な外観は、r5rsプログラムがRacketからライブラリモジュールをロードできるようにする#%require
Racket固有のフックです。
したがって、Racketのr5rsプログラムは次のようになります。
(#%require srfi/13)
(display (string-replace "foo world" "hello" 0 3))
(newline)
基本r5rs
言語を使用する代わりに、本格的な言語を使用する場合、 #lang racket
SRFI13のインポートは同様になります。#lang racket
これは、前のプログラムと同じことを行う小さなプログラムです。
#lang racket
(require srfi/13)
(string-replace "foo world" "hello" 0 3)
残念ながら、報告しているエラーには、問題を正確に診断するための十分な情報がありません。SRFI 13からコピーしたとおっしゃっていたので、どこかに不完全なコピーアンドペーストがあったのではないかと思います。コードを誤ってコピーしたと思う理由の1つは、次のようにコードを定義していることです。
define-syntax let-string-start+end
その行には、実際にはいくつかの重要な括弧がありません。元のソースでは、その行の先頭に主要なパレンがあります。
ただし、少なくともSchemeに精通するまでは、SRFI実装から断片を手作業で選別しようとしないでください。ライブラリ全体をロードして簡素化します。