私はラケットで働いていますが、私の知る限りでは、これは一般的にスキームにおける場合です。あなたが持っている場合Scheme/Racketの条件に基づいて実際に多くのことを定義する方法はありますか?
(define x
(if condition
"do a backflip"
"do a barrel roll"))
しかし:私は、代わりにこのような何かを行うことができ、この特定のケースのための今すぐ
(if condition
(define x "do a backflip")
(define x "do a barrel roll"))
:あなたは私たちが表現コンテキストで何かを定義しようとしているため、このような何かを行うことはできません代わりの
(if condition
(begin (define x "do a backflip")
(define y "awesome")
(define z "shoot me"))
(begin (define x "do a barrel roll")
(define y "nice")
(define z "give me sweet release")))
たちは
を取得しているため、これを定義するためのさまざまな事柄の多くは、本当にひどい取得しますそれができるようDRYではありません(define x
(if condition
"do a backflip"
"do a barrel roll"))
(define y
(if condition
"awesome"
"nice"))
(define z
(if condition
"shoot me"
"give me sweet release"))
、我々は常にcondition
のためにテストを繰り返しています。そして、その結果は、我々がother-condition
をチェックしたい場合は代わりに、テストのcondition
のために、私たちは物事の量が定義されているn
のために変更n
回をしなければならないということです。これを行うためのよりよい方法がありますか?その場合:どのように?
? – Wysaard