Skip to content

Instantly share code, notes, and snippets.

View AaronC81's full-sized avatar

Aaron Christiansen AaronC81

View GitHub Profile
@AaronC81
AaronC81 / fuzzymatch.py
Created December 10, 2015 20:17
FuzzyMatch
import difflib
import enum
"""
FuzzyMatcher - Created by OrangeFlash81 and released under the MIT License.
"""
class EmptyMatchListError(Exception):
"""A simple stub exception thrown when ``FuzzyMatcher.match_list`` is empty."""
pass
class SdlImage < Formula
desc "Image file loading library"
homepage "https://www.libsdl.org/projects/SDL_image"
url "https://www.libsdl.org/projects/SDL_image/release/SDL_image-1.2.10.tar.gz"
revision 1
depends_on "pkg-config" => :build
depends_on "sdl"
depends_on "jpeg" => :recommended
depends_on "libpng" => :recommended
@AaronC81
AaronC81 / defaults.py
Created March 31, 2016 07:11
Default Values
class Person:
def __init__(self, name="", age=0):
self.__name = name
self.__age = age
import inspect
a = inspect.getargspec(Person.__init__)
@AaronC81
AaronC81 / ankofrags.kt
Created July 22, 2016 19:03
Anko Fragments
inline fun ViewManager.frag(noinline fragment: () -> Fragment, theme: Int = 0, init: View.() -> Unit, fragInit: Fragment.() -> Unit): RelativeLayout {
var parentToFragment: RelativeLayout? = null
val childFragment = fragment()
childFragment.fragInit()
return ankoView({
parentToFragment = RelativeLayout(it)
parentToFragment!!.id = 123123 // TODO: Replace with real ID
(it as Activity).fragmentManager.beginTransaction().add(parentToFragment!!.id, childFragment).commit()
parentToFragment!!
@AaronC81
AaronC81 / FragmentView.kt
Last active July 23, 2016 07:58
Anko Fragments v2
class FragmentView(ctx: Context) : RelativeLayout(ctx) {
var childFragment: Fragment? = null
get() = field
set(value) {
field = value
if (field == null) { return }
(context as Activity).fragmentManager.beginTransaction().add(id, field).commit()
}
init {
@AaronC81
AaronC81 / FragmentView.kt
Created July 23, 2016 18:21
Anko Fragments v3
import android.app.Activity
import android.app.Fragment
import android.content.Context
import android.view.View
import android.view.ViewManager
import android.widget.RelativeLayout
import org.jetbrains.anko.custom.ankoView
/**
* @property childFragment The Fragment which this view should contain. Setting this value will destroy previous fragments and commit the new one.
@AaronC81
AaronC81 / server.hs
Created September 16, 2016 06:54
HTTP server using Network.Socket
{-# LANGUAGE RecordWildCards #-}
import Control.Monad
import qualified Data.ByteString as B
import Network.HTTP
import Network.Socket
import Network.URI
main = do
lsock <- socket AF_INET Stream defaultProtocol
bind lsock (SockAddrInet 8080 iNADDR_ANY)
@AaronC81
AaronC81 / fib.asm
Last active November 29, 2016 12:50
Fibonacci Sequence in Little Man Computer
INP
SUB one
STA counter
loop LDA twoLast
ADD oneLast
STA next
OUT
LDA oneLast
STA twoLast
LDA next
@AaronC81
AaronC81 / hangman.py
Last active December 9, 2016 11:23
Hangman
word = list(map(lambda x: (x, False), "hello"))
incorrect_guesses = ""
while not all(map(lambda x: x[1], word)):
print(*(letter if guessed else "_" for letter, guessed in word))
print("Incorrect guesses are: ", *incorrect_guesses)
new_letter = input("Enter a guess: ")
if len(new_letter) != 1:
print("Only input 1 letter!")
continue
if new_letter in list(map(lambda x: x[0], word)):
@AaronC81
AaronC81 / ISR.CPP
Created March 10, 2017 18:18
MS-DOS Interrupt Service Routine Example
#include <stdio.h>
#include <dos.h>
void interrupt far (*oldhandler)(...);
void interrupt myhandler(...) {
printf("Timer Tick!\n");
oldhandler();
}