Skip to content

Instantly share code, notes, and snippets.

@bakgatviooldoos
bakgatviooldoos / epicycles.rkt
Last active October 30, 2024 11:17
Some code for drawing fun little animations with Fourier Transforms
#lang racket
(require
racket/gui mrlib/gif pict)
(define (fourier-sample θ zs)
(for/sum ([(z t) (in-indexed (in-list zs))])
(* z (exp (* t θ)))))
; discrete forward fourier transform
@bakgatviooldoos
bakgatviooldoos / info.rkt
Last active October 20, 2024 18:02
For knitting values together.
#lang info
(define collection "knitting")
(define deps '("base" "threading"))
(define build-deps '("rackunit-lib"))
@bakgatviooldoos
bakgatviooldoos / choose.rkt
Last active October 19, 2024 19:15
the basic idea seems to be workable
#lang racket
(require (for-syntax
syntax/parse
syntax/parse/lib/function-header
racket/syntax
(only-in
racket/list make-list)))
(provide choose)
@bakgatviooldoos
bakgatviooldoos / infix-toy.rkt
Last active October 4, 2024 22:19
top-down operator precedence parsing
#lang racket
(require racket/generic)
;; adapted from:
;; https://eli.thegreenplace.net/2010/01/02/top-down-operator-precedence-parsing/
;; left-binding power property
(define-values (prop:lbp has-lbp? lbp)
(make-struct-type-property/generic