This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Copyright (c) 2017 Chris Patuzzo | |
https://twitter.com/chrispatuzzo | |
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: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module TwosComplement | |
def self.encode(n) | |
if n < 0 | |
binary = (n + 1).abs.to_s(2).chars.map { |c| c == "0" } | |
binary.unshift(true) unless binary.first == true | |
else | |
binary = n.to_s(2).chars.map { |c| c == "1" } | |
binary.unshift(false) unless binary.first == false | |
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[package] | |
name = "sliding_puzzle_message" | |
version = "0.1.0" | |
authors = ["Chris Patuzzo <chris@patuzzo.co.uk>"] | |
edition = "2018" | |
[dependencies] | |
sliding_puzzle = "*" | |
pathfinding = "*" |
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# A quick Sentient program to solve the sudoku posted in this tweet: | |
# https://twitter.com/crypticcracking/status/1293897459912056833 | |
function main () { | |
array9<array9<int5>> sudoku; | |
sudoku.each(function (row) { | |
invariant row.uniq?; | |
invariant row.all?(function (n) { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[package] | |
name = "foo" | |
version = "0.1.0" | |
edition = "2018" | |
[dependencies] | |
legion = "0.2.4" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env ruby | |
# Generate the weights/ offsets for an efficient two-pass Gaussian blur filter of different sizes. | |
# Based on: http://rastergrid.com/blog/2010/09/efficient-gaussian-blur-with-linear-sampling/ | |
# | |
# Usage: ./gaussian [epsilon] | |
require "bigdecimal/util" | |
EPSILON = Float(ARGV[0] || 0.05) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// The EventHandler::new method takes three arguments: | |
// | |
// 1) The Rust function to call to handle the event | |
// 2) The registration function | |
// 3) The deregistration function | |
// | |
// The deregistration function is called when the EventHandler is dropped. | |
// This is similar to React's useEffect cleanup pattern. | |
pub struct EventHandler { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/ruby | |
# Run in the root directory of a git repository with ruby commits.rb | |
# Depends upon the 'rmagic' and 'gruff' gems. | |
require 'rubygems' | |
require 'gruff' | |
commits = `git shortlog -ns`.split("\n").map { |e| e.strip.split("\t") }.map { |n, a| [a, n.to_i] } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
int8 m, n, p, q; | |
m2 = m.square; | |
n2 = n.square; | |
p2 = p.square; | |
q2 = q.square; | |
# ceil(log2(sqrt((2 ** (bits - 1)) ** 2 ** 2 * 3)) + 1) | |
int16 inner, outer1, outer2; | |
int2 i; |
NewerOlder