Skip to content

Instantly share code, notes, and snippets.

@secemp9
secemp9 / interaction_net.py
Created December 17, 2024 12:39
non-complete implementation of an interaction net
class Agent:
def __init__(self, name, ports=None):
self.name = name
self.ports = ports if ports else []
# Each element of ports is either None or a tuple (other_agent, other_port_index)
def __repr__(self):
return f"{self.name}"
def connect(a, pa, b, pb):
@rtkclouds
rtkclouds / ccore_layer.py
Created November 7, 2023 03:58
ccore layer
class Rezero(layers.Layer):
def __init__(self):
super().__init__()
self.alpha1 = tf.Variable(0.0, trainable=True)
def call(self, inputs, training):
return self.alpha1*inputs
class CustomRezero(tf.keras.layers.Layer):

Minimal Unreal New Project Setup

Skip the Launcher and create a new project directly

What is the minimal number of required files and folders needed to create an Unreal Engine Project? Surprisingly little -- one, one-line file to be specific -- and you can launch without needing to use the Launcher or have unreal prompt for a Template project.

Maybe the interesting thing here is that this is an option for some kind of automation. It's literally just create a one-line file, "open" it, and (maybe) select your chosen Unreal version.

Given the number of dev and test files I create, this is a nice direct way to get up and going.

@qpwo
qpwo / 1-import-ts-repl.sh
Last active February 26, 2022 03:34
use esbuild to get a node repl for a typescript file
function import-ts-repl() { (
set -e
file=$1
rm -f ${file}.js ${file}.js.map
esbuild ${file} --target=node14 --format=cjs --sourcemap --outfile=${file}.js --platform=node --bundle
node -r ${file}.js
rm -f ${file}.js ${file}.js.map
); }
@qpwo
qpwo / express-typescript-auth.ts
Last active January 5, 2022 16:36
username & password authentication in node.js + express (WITHOUT passport) in typescript in a single standalone file (minimal working example)
// January 2022, Luke Harold Miles, public domain obviously
// Adapted from: https://github1s.com/expressjs/express/blob/master/examples/auth/index.js
// You can run with `ts-node express-typescript-auth.ts`
// Source for this file to get updates: https://gist.github.com/qpwo/4b2ae3aaaf222d099b34898152118c43
import { pbkdf2Sync, randomBytes, timingSafeEqual } from 'crypto'
import type { NextFunction, Request, Response } from 'express'
import express from 'express'
import type { Session } from 'express-session'
import session from 'express-session'
@qpwo
qpwo / predator_prey.py
Last active March 25, 2021 18:24
Predator-prey multi-agent reinforcement-learning environment in python without dependencies, and an implementation of an example q-learning agent
"""
A simple predator-prey multi-agent reinforcement learning environment in
python without dependencies, and an implementation of an example q-learning agent.
Python 3.9
https://gist.github.com/qpwo/a19f43368afd77288bf3b7db81fdc18b/
February, 2021 -- Public domain dedication
"""
from dataclasses import dataclass, field
import random
@robertmaxwilliams
robertmaxwilliams / mers_min.c
Last active February 2, 2021 22:25
Simple and mildly ugly (and not very fast) implementation of 32 bit Mersenne Twister MT19937. mers_min.c is a shortened verion, mersenne_twister.c is the longer, parameterized version.
// Compile with gcc -std=c99 mersenne_twister.c -o /dev/random
// ps the -o /dev/random part is a joke, it's not actually meant to be a random device.
// Absolutely no warranty, Kopyleft I guess who gives a shit
#include <stdint.h>
#include <stdio.h>
uint32_t x[624];
uint32_t index = 0;
void twist() {
for (int k = 0; k < 624; k++) {
x[k] = x[(k+397)%624]
import math
import scipy.stats as st
# assumes bivariate normal, dichotomised groups
def dichotomy_r_to_d(r) :
d = 2*r / (math.sqrt(1 - r**2))
return d
# Equation 9
# https://sci-hub.tw/10.1037/1082-989X.11.4.386
@Mr0grog
Mr0grog / stdout_stderr_combined.py
Created January 25, 2020 07:39
Experiments in capturing combined output streams from subprocesses in Python.
# Experiments in capturing combined output streams from subprocesses.
#
# It turns out it's kind of hard to get the interleaved results of stdout and
# stderr in Python. However, in a lot of situations where Python is calling
# out to other processes, you probably want to swallow the child process's
# stderr when things to right and print it when things go wrong. Since some
# programs may be outputting results on stdout and warnings and errors on
# stderr, it makes sense that you'd want it all, and all in the order it was
# printed when things go wrong.
#
@minhoryang
minhoryang / README.md
Created August 20, 2019 05:19
FLASK with UDS(Unix Domain Socket)