Re: [racket-users] [standard-fish] Reverse engineered quilt design

2019-08-01 Thread Stephen De Gabrielle
Thanks Daniel. the ideal of a #lang quilt sounds good.

S.

On Thursday, August 1, 2019 at 1:22:55 PM UTC+1, Daniel Prager wrote:
>
> Hi Stephen
>
> On Thu, Aug 1, 2019 at 8:31 PM Stephen De Gabrielle  > wrote:
>
>> How your use of racket has evolved over the past 5 years
>> * how you handled the changes to racket in that time 
>> * what was good (and bad) about using Racket
>>
>> in general what has changed since that presentation?
>>
>
> Not a lot to report.
>
> Incremental improvements — go play with the site — didn't make 
> youpatch.com hugely successful, and we didn't pivot in a big way, but the 
> site's still there and gets used. Occasionally there's a flurry of quilt 
> designs created as new quilters find the site and tell their friends.
>
> I experimented with making more traditional quilts using random-ness and 
> symmetry, but haven't released that software commercially.
>
> I found Racket terrific for the reasons mentioned in the talk, but because 
> I didn't take anything else commercial — I've mainly been doing non-tech 
> work of late — so I haven't really upped my Racket game, although I 
> continue to tinker and learn as time permits.
>
> The changes to Racket occasionally broke something on the site, but those 
> changes were easily fixed.
>
> Dan
>
>  
>

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/a0f2a35f-3415-42ef-9411-7710c3f216db%40googlegroups.com.


Re: [racket-users] [standard-fish] Reverse engineered quilt design

2019-08-01 Thread Daniel Prager
Hi Stephen

On Thu, Aug 1, 2019 at 8:31 PM Stephen De Gabrielle 
wrote:

> How your use of racket has evolved over the past 5 years
> * how you handled the changes to racket in that time
> * what was good (and bad) about using Racket
>
> in general what has changed since that presentation?
>

Not a lot to report.

Incremental improvements — go play with the site — didn't make youpatch.com
hugely successful, and we didn't pivot in a big way, but the site's still
there and gets used. Occasionally there's a flurry of quilt designs created
as new quilters find the site and tell their friends.

I experimented with making more traditional quilts using random-ness and
symmetry, but haven't released that software commercially.

I found Racket terrific for the reasons mentioned in the talk, but because
I didn't take anything else commercial — I've mainly been doing non-tech
work of late — so I haven't really upped my Racket game, although I
continue to tinker and learn as time permits.

The changes to Racket occasionally broke something on the site, but those
changes were easily fixed.

Dan

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CAFKxZVWzUFgf%2BDcDj5ZOErVd9Xa%3DS5NUtw_PK1UXctYP00byGw%40mail.gmail.com.


Re: [racket-users] [standard-fish] Reverse engineered quilt design

2019-08-01 Thread Daniel Prager
On Thu, Aug 1, 2019 at 9:53 PM John Clements 
wrote:

> That’s a really nice example of the uses of abstraction in non-programming
> domains. Thanks!
>

Thanks, John!

I think there's real potential for a *#lang quilt *as a(nother) creative
way to teach aspects of programming while exploring a subset of
computational art.

Mirela and I made some progress in this direction, from which this example
emerged, but there's a fair bit more to be done.

Dan

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CAFKxZVXbfPN8oyQZRx6Hvio88yAxOOGpF5CBZ-GhNsWJX%3DkR1Q%40mail.gmail.com.


Re: [racket-users] [standard-fish] Reverse engineered quilt design

2019-08-01 Thread 'John Clements' via Racket Users
That’s a really nice example of the uses of abstraction in non-programming 
domains. Thanks!

John

> On Jul 30, 2019, at 19:04, Daniel Prager  wrote:
> 
> Here's a photo of the original quilt from Red Pepper Quilts (not my work):
> 
> 
> 
> More images, including details, here:  
> http://bastings54.rssing.com/browser.php?indx=6115008=60
> 
> And here's my reverse-engineered Racket version:
> 
> 
> 
> Top-level code, below.
> 
> 
> #lang racket
> 
> (require threading
>  "quilt.rkt")
> 
> ;; EXAMPLES
> ;;
> 
> ;; Build a super-duper quilt from rectangles, hsts, squares, and a
> ;; few qsts
> 
> (define qst_ (qst 1 'black 'white))
> (define qst__ (qst 1 'black 'black 'black 'white))
> (define hst_ (hst 1 'black 'white 'forward))
> 
> (define (around-the-world . ss)
>   ; error on (< (length ss) 3)
>   (define ts (map (λ (s)
> (if (symbol? s)
> (square 1 s)
> s))
>   ss))
>   
> (let around ([n(- (* 2 (length ss)) 3)])
>   (define half (/ (- n 1) 2))
>   (if (= n 3)
>   (apply surround (take ts 3))
>   (let* ([ps (take (drop ts half) (min (+ half 1)
>(- (length ts) half)))]
>  [center (first ps)]
>  [corner (last ps)]
>  [ts (rest (reverse (rest ps)))]
>  [side (apply beside 
>   (append (make-list (- half (length ts) 1)
>  corner)
>   ts))])
> (surround (around (- n 2))
>   (reflect side center)
>   corner)
> 
> (define (diamond center [surround 'white])
>   (4-square (hst 1 surround center 'forward) R))
> 
> (define hst-strip
>   (~> (reflect (beside/n 4 hst_) qst__)
>   (B (H hst_))
>   reflect))
> 
> (define b1 (around-the-world 'black
>  qst_
>  'cerise
>  'lupine
>  'caribbean
>  hst_))
> 
> (define b2 (around-the-world 'black
>  qst_
>  'amber
>  'cactus
>  'maize
>  hst_))
> 
> (define diamond-strip
>   (beside/n 11 (diamond 'black) (diamond 'caribbean)))
> 
> (define geese
>   (beside/n 9 (A (V hst_) hst_)))
> 
> (define quilt
>   (~> (grid [b1 (R geese) b2]
> [geese (diamond 'maize 'cactus) (H geese)]
> [b2 (L geese) b1])
>   (surround hst-strip hst_)
>   (surround diamond-strip (diamond 'caribbean))
>   (add-strips 'cactus)
>   (add-strips 'caribbean)
>   (add-strips 'black)))
> 
> 
> (parameterize ([units 20]
>[show-outline #t])
>   (draw quilt))
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to racket-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/racket-users/CAFKxZVUFCee6LXoejHcrToKnDzOi4AUPLjCk%3DFX%3DF-MLkqLHCA%40mail.gmail.com.



-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/cf635a09-de1b-4e66-ae9e-aa3a41925756%40mtasv.net.


Re: [racket-users] [standard-fish] Reverse engineered quilt design

2019-08-01 Thread Stephen De Gabrielle
How your use of racket has evolved over the past 5 years
* how you handled the changes to racket in that time 
* what was good (and bad) about using Racket

in general what has changed since that presentation?

Stephen



On Thursday, August 1, 2019 at 10:03:19 AM UTC+1, Daniel Prager wrote:
>
> Hi Stephen
>
> What specifically would you like to hear more about?
>
>
> Cheers
>
> Dan
>
> On Thu., 1 Aug. 2019, 00:39 Stephen De Gabrielle,  > wrote:
>
>> Hi Daniel
>>
>> On Wed, 31 Jul 2019 at 14:16, Daniel Prager > > wrote:
>>
>>> On Wed, Jul 31, 2019 at 6:28 PM Stephen De Gabrielle <
>>> spdega...@gmail.com > wrote:
>>>
 Wow. 

>>>
>>> Thanks Stephen, and good on you for this fun competition!
>>>
>> :)
>>
>>
>>> It's been almost 5 years since RacketCon 2014, where I talked about 
>>> youpatch.com, still up and running, BTW.
>>>
>> TBH. I’d like to hear more about it.
>>
>>>
>>> https://www.youtube.com/watch?v=8psnTEjYIEA
>>>
>>> I've done some other experiments subsequently, and may one day develop a 
>>> *#lang 
>>> quilt*, but have been diverted by other stuff lately.
>>>
>>
>> That sounds like an idea for another competition. I wonder how people 
>> feel about hats?
>>
>>
>>
>>> Dan
>>>
 -- 
>> 
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/52dd3fc0-1bcb-4649-8c43-ae566db0999e%40googlegroups.com.


Re: [racket-users] [standard-fish] Reverse engineered quilt design

2019-08-01 Thread Daniel Prager
Hi Stephen

What specifically would you like to hear more about?


Cheers

Dan

On Thu., 1 Aug. 2019, 00:39 Stephen De Gabrielle, 
wrote:

> Hi Daniel
>
> On Wed, 31 Jul 2019 at 14:16, Daniel Prager 
> wrote:
>
>> On Wed, Jul 31, 2019 at 6:28 PM Stephen De Gabrielle <
>> spdegabrie...@gmail.com> wrote:
>>
>>> Wow.
>>>
>>
>> Thanks Stephen, and good on you for this fun competition!
>>
> :)
>
>
>> It's been almost 5 years since RacketCon 2014, where I talked about
>> youpatch.com, still up and running, BTW.
>>
> TBH. I’d like to hear more about it.
>
>>
>> https://www.youtube.com/watch?v=8psnTEjYIEA
>>
>> I've done some other experiments subsequently, and may one day develop a 
>> *#lang
>> quilt*, but have been diverted by other stuff lately.
>>
>
> That sounds like an idea for another competition. I wonder how people feel
> about hats?
>
>
>
>> Dan
>>
>>> --
> 
>

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CAFKxZVXb1rH2g8brH%2BK6fh7QW6ZTT%3D_-gB__1-1NHqpqNPz_RQ%40mail.gmail.com.


Re: [racket-users] [standard-fish] Reverse engineered quilt design

2019-07-31 Thread Daniel Prager
On Wed, Jul 31, 2019 at 6:28 PM Stephen De Gabrielle <
spdegabrie...@gmail.com> wrote:

> Wow.
>

Thanks Stephen, and good on you for this fun competition!

It's been almost 5 years since RacketCon 2014, where I talked about
youpatch.com, still up and running, BTW.

https://www.youtube.com/watch?v=8psnTEjYIEA

I've done some other experiments subsequently, and may one day develop a *#lang
quilt*, but have been diverted by other stuff lately.

Dan

>

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CAFKxZVVkbzkSbD-F_vDqEnDbK0VxRMAOGO8JcQ7ya1U7Y7XQ4w%40mail.gmail.com.


Re: [racket-users] [standard-fish] Reverse engineered quilt design

2019-07-31 Thread Stephen De Gabrielle
Wow.

On Wed, 31 Jul 2019 at 00:04, Daniel Prager 
wrote:

> Here's a photo of the original quilt from Red Pepper Quilts (not my work):
>
>
>
> More images, including details, here:
> http://bastings54.rssing.com/browser.php?indx=6115008=60
>
> And here's my reverse-engineered Racket version:
>
> [image: super-duper-HST-and-QST-quilt.png]
>
> Top-level code, below.
>
>
> #lang racket
>
> (require threading
>  "quilt.rkt")
>
> ;; EXAMPLES
> ;;
>
> ;; Build a super-duper quilt from rectangles, hsts, squares, and a
> ;; few qsts
>
> (define qst_ (qst 1 'black 'white))
> (define qst__ (qst 1 'black 'black 'black 'white))
> (define hst_ (hst 1 'black 'white 'forward))
>
> (define (around-the-world . ss)
>   ; error on (< (length ss) 3)
>   (define ts (map (λ (s)
> (if (symbol? s)
> (square 1 s)
> s))
>   ss))
>
> (let around ([n(- (* 2 (length ss)) 3)])
>   (define half (/ (- n 1) 2))
>   (if (= n 3)
>   (apply surround (take ts 3))
>   (let* ([ps (take (drop ts half) (min (+ half 1)
>(- (length ts) half)))]
>  [center (first ps)]
>  [corner (last ps)]
>  [ts (rest (reverse (rest ps)))]
>  [side (apply beside
>   (append (make-list (- half (length ts) 1)
>  corner)
>   ts))])
> (surround (around (- n 2))
>   (reflect side center)
>   corner)
>
> (define (diamond center [surround 'white])
>   (4-square (hst 1 surround center 'forward) R))
>
> (define hst-strip
>   (~> (reflect (beside/n 4 hst_) qst__)
>   (B (H hst_))
>   reflect))
>
> (define b1 (around-the-world 'black
>  qst_
>  'cerise
>  'lupine
>  'caribbean
>  hst_))
>
> (define b2 (around-the-world 'black
>  qst_
>  'amber
>  'cactus
>  'maize
>  hst_))
>
> (define diamond-strip
>   (beside/n 11 (diamond 'black) (diamond 'caribbean)))
>
> (define geese
>   (beside/n 9 (A (V hst_) hst_)))
>
> (define quilt
>   (~> (grid [b1 (R geese) b2]
> [geese (diamond 'maize 'cactus) (H geese)]
> [b2 (L geese) b1])
>   (surround hst-strip hst_)
>   (surround diamond-strip (diamond 'caribbean))
>   (add-strips 'cactus)
>   (add-strips 'caribbean)
>   (add-strips 'black)))
>
>
> (parameterize ([units 20]
>[show-outline #t])
>   (draw quilt))
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to racket-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/racket-users/CAFKxZVUFCee6LXoejHcrToKnDzOi4AUPLjCk%3DFX%3DF-MLkqLHCA%40mail.gmail.com
> 
> .
>
-- 


-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CAGHj7-KbwDiLFDpa2LU5m6CcYKYsDEaMzzq2xxGoPSmtjBGLfg%40mail.gmail.com.


[racket-users] [standard-fish] Reverse engineered quilt design

2019-07-30 Thread Daniel Prager
Here's a photo of the original quilt from Red Pepper Quilts (not my work):



More images, including details, here:
http://bastings54.rssing.com/browser.php?indx=6115008=60

And here's my reverse-engineered Racket version:

[image: super-duper-HST-and-QST-quilt.png]

Top-level code, below.


#lang racket

(require threading
 "quilt.rkt")

;; EXAMPLES
;;

;; Build a super-duper quilt from rectangles, hsts, squares, and a
;; few qsts

(define qst_ (qst 1 'black 'white))
(define qst__ (qst 1 'black 'black 'black 'white))
(define hst_ (hst 1 'black 'white 'forward))

(define (around-the-world . ss)
  ; error on (< (length ss) 3)
  (define ts (map (λ (s)
(if (symbol? s)
(square 1 s)
s))
  ss))

(let around ([n(- (* 2 (length ss)) 3)])
  (define half (/ (- n 1) 2))
  (if (= n 3)
  (apply surround (take ts 3))
  (let* ([ps (take (drop ts half) (min (+ half 1)
   (- (length ts) half)))]
 [center (first ps)]
 [corner (last ps)]
 [ts (rest (reverse (rest ps)))]
 [side (apply beside
  (append (make-list (- half (length ts) 1)
 corner)
  ts))])
(surround (around (- n 2))
  (reflect side center)
  corner)

(define (diamond center [surround 'white])
  (4-square (hst 1 surround center 'forward) R))

(define hst-strip
  (~> (reflect (beside/n 4 hst_) qst__)
  (B (H hst_))
  reflect))

(define b1 (around-the-world 'black
 qst_
 'cerise
 'lupine
 'caribbean
 hst_))

(define b2 (around-the-world 'black
 qst_
 'amber
 'cactus
 'maize
 hst_))

(define diamond-strip
  (beside/n 11 (diamond 'black) (diamond 'caribbean)))

(define geese
  (beside/n 9 (A (V hst_) hst_)))

(define quilt
  (~> (grid [b1 (R geese) b2]
[geese (diamond 'maize 'cactus) (H geese)]
[b2 (L geese) b1])
  (surround hst-strip hst_)
  (surround diamond-strip (diamond 'caribbean))
  (add-strips 'cactus)
  (add-strips 'caribbean)
  (add-strips 'black)))


(parameterize ([units 20]
   [show-outline #t])
  (draw quilt))

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CAFKxZVUFCee6LXoejHcrToKnDzOi4AUPLjCk%3DFX%3DF-MLkqLHCA%40mail.gmail.com.