Skip to content

Instantly share code, notes, and snippets.

#lang racket/gui
;; Copyright (c) 2018 Alex Harsanyi
;; Permission is hereby granted, free of charge, to any person obtaining a
;; copy of this software and associated documentation files (the "Software"),
;; to deal in the Software without restriction, including without limitation
;; the rights to use, copy, modify, merge, publish, distribute, sublicense,
;; and/or sell copies of the Software, and to permit persons to whom the
;; Software is furnished to do so, subject to the following conditions:
@alex-hhh
alex-hhh / report.md
Created January 31, 2019 12:41
Racket CS performance testing using ActivityLog2

A Racket blog post was published recently outlining the performance of Racket-on-Chez implementation. There was a discussion on the racket-users list, which prompted me to do some testing of my own.

Testing overview

A while ago I wrote a profiler to analyze the performance of various

@alex-hhh
alex-hhh / data-types.md
Last active February 14, 2019 11:15
data types
with recursive
TS(this_week, prev_week) as (
select date('now', '-280 days', 'weekday 1') as this_week,
date('now', '-280 days', '-7 days', 'weekday 1') as prev_week
union all
select date(this_week, '+7 days', 'weekday 1') as this_week,
date(prev_week, '+7 days', 'weekday 1') as prev_week
from TS
where strftime('%s', this_week) < strftime('%s', 'now')),
SE(week, rDist, rDuration, rTss, bDist, bDuration, bTss, sDist, sDuration, sTss) as (
@alex-hhh
alex-hhh / dynamic-select.rkt
Created February 15, 2019 01:49
Dynamic Item Selection
#lang racket/gui
(define font-faces (get-face-list))
(define my-combo-field%
(class combo-field%
(define (construct-menu)
(let ((menu (send this get-menu))
(prefix (send this get-value)))
@alex-hhh
alex-hhh / colormap.rkt
Last active March 21, 2022 06:51
plot color maps
#lang racket
(require racket/draw
racket/promise
plot
plot/utils
pict)
;; These color maps correspond to the Matplotlib 3.0.3 qualitative color maps
;; with the same names. See
;; https://matplotlib.org/examples/color/colormaps_reference.html
#lang racket/base
;; Copyright (c) 2019 Alex Harsanyi
;; Permission is hereby granted, free of charge, to any person obtaining a
;; copy of this software and associated documentation files (the "Software"),
;; to deal in the Software without restriction, including without limitation
;; the rights to use, copy, modify, merge, publish, distribute, sublicense,
;; and/or sell copies of the Software, and to permit persons to whom the
;; Software is furnished to do so, subject to the following conditions:
@alex-hhh
alex-hhh / pwgen-gui.rkt
Created March 27, 2019 03:46
Password Generator Gui
#lang racket/gui
;; Copyright (c) 2019 Alex Harsányi
;; Permission is hereby granted, free of charge, to any person obtaining a
;; copy of this software and associated documentation files (the "Software"),
;; to deal in the Software without restriction, including without limitation
;; the rights to use, copy, modify, merge, publish, distribute, sublicense,
;; and/or sell copies of the Software, and to permit persons to whom the
;; Software is furnished to do so, subject to the following conditions:
#lang racket
(require json)
;; Example 0: Load and manipulate the Timezone GeoJSON file
;; You will also need to download timezone data from:
;;
;; https://github.com/evansiroky/timezone-boundary-builder/releases
;; Copyright (c) 2019 Alex Harsányi
@alex-hhh
alex-hhh / world-map.rkt
Last active August 20, 2019 03:01
World Map, standard-fish competition 2019
#lang racket
(require json racket/draw math/base)
(define (lat-lon->map-point coordinates)
(match-define (list lon lat _ ...) coordinates)
(define-values (x y) (values (degrees->radians lon) (asinh (tan (degrees->radians lat)))))
(list (/ (+ 1 (/ x pi)) 2) (/ (- 1 (/ y pi)) 2)))
(define (draw-polygon dc polygons)
(define path