Skip to content

Instantly share code, notes, and snippets.

View RandyMcMillan's full-sized avatar
🛰️
Those who know - do not speak of it.

@RandyMcMillan RandyMcMillan

🛰️
Those who know - do not speak of it.
View GitHub Profile
@RandyMcMillan
RandyMcMillan / prisoners_dilemma.rs
Last active July 7, 2026 13:26 — forked from rust-play/playground.rs
prisoners_dilemma.rs
use std::fmt;
/// The two possible moves a player can make in the Prisoner's Dilemma.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
enum Move {
Cooperate,
Defect,
}
/// Represents a game-theoretic strategy.
@RandyMcMillan
RandyMcMillan / tit_for_tat.rs
Last active July 7, 2026 12:49 — forked from rust-play/playground.rs
tit_for_tat.rs
use std::fmt;
/// The two possible moves a player can make in the Prisoner's Dilemma.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
enum Move {
Cooperate,
Defect,
}
/// Represents a game-theoretic strategy.
@RandyMcMillan
RandyMcMillan / mayan_cal.rs
Last active July 6, 2026 15:03 — forked from rust-play/playground.rs
mayan_cal.rs
// mayan_cal.rs
use std::fmt;
/// Mayan Long Count
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct LongCount {
pub baktun: u32,
pub katun: u32,
pub tun: u32,
pub uinal: u32,
@RandyMcMillan
RandyMcMillan / ring_buffer.rs
Last active June 20, 2026 13:25 — forked from rust-play/playground.rs
ring_buffer.rs
use crossbeam_utils::CachePadded;
use std::cell::UnsafeCell;
use std::mem::MaybeUninit;
use std::sync::atomic::{AtomicUsize, Ordering};
use std::sync::Arc;
use std::thread;
pub struct RingBuffer<T, const N: usize> {
pub head: CachePadded<AtomicUsize>,
pub tail: CachePadded<AtomicUsize>,
@RandyMcMillan
RandyMcMillan / demo_saturating_arithmetic.rs
Created June 19, 2026 17:01 — forked from rust-play/playground.rs
demo_saturating_arithmetic.rs
//! Collatz sequence analyzer demonstrating both wrapping and saturating arithmetic.
//! Context: BIP-64MOD + GCC alignment verification
use std::num::Wrapping;
/// A demo function showing how saturating arithmetic behaves at the upper limit.
/// Instead of wrapping around to 0, it caps the value safely at u64::MAX.
pub fn demo_saturating_arithmetic(n: u64) -> u64 {
// If n is close to u64::MAX, regular arithmetic would panic in debug.
// saturating_mul and saturating_add will safely clamp the value at u64::MAX.
@RandyMcMillan
RandyMcMillan / chrono_coercion.rs
Last active June 17, 2026 11:50 — forked from rust-play/playground.rs
chrono_coercion.rs
use chrono::{DateTime, Local, Duration};
use std::ops::Deref;
struct Meeting {
name: String,
start_time: DateTime<Local>,
}
impl Deref for Meeting {
type Target = DateTime<Local>;
@RandyMcMillan
RandyMcMillan / deref_coercion.rs
Last active June 17, 2026 11:33 — forked from rust-play/playground.rs
deref_coercion.rs
struct Wrapper(String);
impl std::ops::Deref for Wrapper {
type Target = String;
fn deref(&self) -> &String {
&self.0
}
}
@RandyMcMillan
RandyMcMillan / forking_lemma.rs
Last active June 13, 2026 16:16 — forked from rust-play/playground.rs
forking_lemma.rs
//! Generalizing Cryptographic Reductions and the Forking Lemma in Pure Rust.
//! This implementation relies strictly on the standard library.
use std::collections::HashMap;
use std::cell::RefCell;
// =========================================================================
// 1. Core Mathematical Abstractions (Prime Field & Mock Curve)
// =========================================================================
@RandyMcMillan
RandyMcMillan / byz_fee_engine.rs
Last active June 10, 2026 17:52 — forked from rust-play/playground.rs
byz_fee_engine.rs
use chrono::{DateTime, Duration, Utc, Timelike};
use std::sync::{Arc, Mutex};
use std::time::Duration as StdDuration;
// --- CONSTANTS ---
const SHA256_K: [u32; 64] = [
0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,
0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,
0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,
0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,
@RandyMcMillan
RandyMcMillan / jupiter_opposition.rs
Last active June 3, 2026 22:29 — forked from rust-play/playground.rs
jupiter_opposition.rs
// Required dependencies in Cargo.toml:
// [dependencies]
// chrono = "0.4"
use chrono::{TimeZone, Utc};
fn main() {
// Jupiter Opposition 2011-10-29 01:34:00 UTC
let datetime = Utc.with_ymd_and_hms(2011, 10, 29, 1, 34, 0).unwrap();
let unix_timestamp = datetime.timestamp();