コメントの削除
Posted feedbacks - Scheme
Scheme で書きました。
read で読み込んで write で書き出せばコメントを消すことができます。
但し、タブや改行まで消えてしまいます。
これ以外の方法で実装しようとするとパーサを書き直すことになり大変ですので、この方法に Pretty Printer を組み合わせるのが現実的な回答だと思います。
see: Gauche:PrettyPrint
1 2 3 4 5 6 7 8 | (define decomment (lambda ()
(let loop ((s (read)))
(if (not (eof-object? s))
(begin (write s) (newline) (loop (read)))))))
(define main (lambda (args)
(decomment)
0))
|
同じく,タブや改行は消えてしまいます.
writeだと,#0=(1 . #0#)で終わらないのでwirte/ssを使いました.
writeだと,#0=(1 . #0#)で終わらないのでwirte/ssを使いました.
1 | (port-for-each write/ss read)
|
すいません,訂正です.
#6573のでは,トップレベルに直接変数が書いてあった時に,くっ付いてしまいますね.
#6573のでは,トップレベルに直接変数が書いてあった時に,くっ付いてしまいますね.
1 | (port-for-each (lambda (s) (write/ss s) (newline)) read)
|





nobsun
#6534()
Rating-1/5=-0.20
[ reply ]