Skip to content

Instantly share code, notes, and snippets.

View inopinatus's full-sized avatar
🐼
fuzzy logic

Josh Goodall inopinatus

🐼
fuzzy logic
View GitHub Profile
@inopinatus
inopinatus / inequalities.md
Last active December 22, 2025 05:54
ar inequalities
Inequality Interval Ruby range Active Record¹ Arel² Description
x >= a [a, ∞) a.. where(x: a..) x.gteq(a) Right unbounded closed
x > a (a, ∞) n/a where.not(x: ..a) x.gt(a) Right unbounded open
x <= a (-∞, a] ..a where(x: ..a) x.lteq(a) Left unbounded closed
x < a (-∞, a) ...a where(x: ...a) x.lt(a) Left unbounded open
a <= x <= b [a, b] a..b where(x: a..b) x.between(a..b) Closed
a < x < b (a, b) n/a where.not(x: ..a).where(x: ...b) x.gt(a).and(x.lt(b)) Open
a <= x < b [a, b) a...b where(x: a...
@inopinatus
inopinatus / uu58.rb
Last active May 3, 2025 13:41
Convert UUIDs to/from base58
module Uu58
ALPHABET58 = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".chars.freeze
ALPHAMAP58 = ALPHABET58.each_with_index.to_h.freeze
# Convert a string UUID to a base58 string representation.
#
# Output will be padded up to 22 digits if necessary.
#
# Behaviour is undefined if passing something other than a 128-bit
# hex string in network order with optional interstitial hyphens.