# [racket] left boundary problem

 From: Matthias Felleisen (matthias at ccs.neu.edu) Date: Thu May 10 12:08:34 EDT 2012 Previous message: [racket] `def' ? Next message: [racket] left boundary problem Messages sorted by: [date] [thread] [subject] [author]

```On May 10, 2012, at 11:01 AM, Roelof Wobben wrote:

> p 10-5-2012 15:33, Matthias Felleisen schreef:
>>
>>
>> Exercise 1: eliminate all constants from function definition.
>
> (define kat (circle 39 'solid 'red))
> (define workspace (empty-scene 1000 200))
> (define lengte (image-width workspace))
> (define gauge-omtrek (rectangle 1000 20 "outline" "black"))
> (define decrease-gauge 0.1)
> (define increase-x-cat 3)
> (define lengte2 (/ (image-width kat)2))
> (define ondergrens (- 0 lengte2))
> (define bovengrens (+ lengte lengte2))
>

Where did the function definitions go?

> Exercise 2: clearly separate all constants that are freely definable (image of kat) from those that depend on these (size of kat and surrounding box). Then change the former to 'strange' values and see whether the program still makes sense. That's called refactoring for single points of control, and if you can do it you're well on your way to real software engineering.
>
> ; free-definable constant :
>
> (define kat (circle 39 'solid 'red))
> (define workspace (empty-scene 1000 200))
> (define decrease-gauge 0.1)
> (define increase-x-cat 3)
>
>
> (define decrease-gauge 0.1)
>
> (define increase-x-cat 3)
> (define gauge-omtrek (rectangle 1000 20 "outline" "black"))
>
>
> ;depend constants
>
> (define lengte (image-width workspace)
> (define lengte_cat (image-width cat)

Perhaps you should define the above two constants first and then make the others depend on them?

> ;strange constants
>
> (define correctie_kat (/ lengte_cat 2)
> (define ondergrens ( - 0 correctie-kat)
> (define bovengrens ( + lengte correctie-kat)
>
> Is this is what you mean ?

You clearly haven't finished the exercise. Try modifying the width to 3 (from 1000) and see what happens? Do you have enough dependencies?

Do reply in public. I may not be available to respond.

-- Matthias

```

 Posted on the users mailing list. Previous message: [racket] `def' ? Next message: [racket] left boundary problem Messages sorted by: [date] [thread] [subject] [author]