Skip to content

Instantly share code, notes, and snippets.

View donn's full-sized avatar

Mohamed Gaber donn

View GitHub Profile
@donn
donn / reflection.cpp
Created March 21, 2019 16:48
C++ Reflection Test Thing
// Knowledge is power
// This is trivial, in the public domain, do whatever you want, no warranty, etc
// (I think this only works with GCC and Clang)
#include <typeinfo>
#include <iostream>
#include <cxxabi.h>
struct A {
virtual void print(std::ostream& stream) {
@donn
donn / Futures.md
Last active June 10, 2019 08:19
No frills swift future

Single-file no-frills Futures implementation for Swift

For when you aren't loading images.

import Foundation

public class Future<Type> {
    private var store: Type?

 private var mutex: pthread_mutex_t
@donn
donn / ALU.scala
Created October 12, 2019 12:13
RiscBEE ALU in Chisel
/*
The RiscBEE ALU in Chisel
I rewrote the ALU for github.io/donn/RiscBEE in Chisel in the initial research phase for Phi…
I uh. Wasn't a fan.
Scala
--
This is free and unencumbered software released into the public domain.
Anyone is free to copy, modify, publish, use, compile, sell, or
@donn
donn / tm4c_mac_setup.rb
Last active October 28, 2019 22:43
TM4C123GH6PM Environment Mac Setup
#!/usr/bin/env ruby
# TM4C123GH6PM Environment Mac Setup
#
# This is what I do when I procrastinate.
#
# I recommend you have homebrew pre-installed for this, but the script
# will try to install it anyway.
#
# (To get STM32 working on Mac instead, try
@donn
donn / cthreadpoolfuture.swift
Created November 17, 2019 15:08
c thread pool future swift
// attempted to replace GCD but it turns out GCD was not in fact broken so uh Linux
import Foundation
import CThreadPool
var pool: threadpool?
public class Future {
private var semaphore: DispatchSemaphore
private var store: Any?
private var executor: () -> Any
@donn
donn / AndroidHTTP101.md
Last active January 14, 2020 20:51
Using Volley, Gson and Picasso for Android Newbies

Android HTTP 101

Manifest

Right below the <manifest /> tag:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<user-permission android:name="android.permission.INTERNET" />

build.gradle

@donn
donn / graph.swift
Last active November 2, 2021 14:20
Swift Uniform Cost Search
#!/usr/bin/env quips
/*
Requires quips - github.com/donn/quips
yeet
Swift
--
This is free and unencumbered software released into the public domain.
Anyone is free to copy, modify, publish, use, compile, sell, or
@donn
donn / opendbpy.py
Created December 24, 2021 12:57
opendbpy for reference
# This file was automatically generated by SWIG (http://www.swig.org).
# Version 4.0.2
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.
from sys import version_info as _swig_python_version_info
if _swig_python_version_info < (2, 7, 0):
raise RuntimeError("Python 2.7 or later required")
@donn
donn / Icarus Verilog Tutorial.md
Last active October 19, 2022 18:45
Icarus Verilog Tutorial
@donn
donn / cnf_to_xnf.ipynb
Last active November 28, 2022 13:57
Conjunctive Normal Form to Conjunctive XOR-based form
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.