Skip to content

Instantly share code, notes, and snippets.

View aaronchall's full-sized avatar
😗
Working!

Aaron Hall, MBA aaronchall

😗
Working!
View GitHub Profile
@aaronchall
aaronchall / pythonbraces.py
Created February 10, 2014 04:14
Python with Braces
class MyClass(MyParent): #{
'''
demonstrating using braces with Python,
assuming best practice indentation
'''
def method(self): #{
for i in xrange(100): #{
try: #{
self.do_something(i) #}
####### License: MIT
"""MIT License
Copyright (c) 2015 Aaron Hall
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
import threading
from time import sleep, time
from itertools import count
class WorkThread(threading.Thread):
"""Thread class with a stop() method. The thread itself has to check
regularly for the stopped() condition."""
def __init__(self):
from datetime import datetime, date
from decimal import Decimal
class TypedList(list):
'''assumes subclassed with attribute _type constructor'''
@classmethod
def gen_type(cls, iterable):
return (cls._type(i) for i in iterable)
def __init__(self, iterable=()):
super(TypedList, self).__init__(self.gen_type(iterable))
@aaronchall
aaronchall / demohtml5.py
Last active October 12, 2015 06:03
23 lines of Python, generate 67 lines of HTML
API:
def main():
nav = Nav([UnorderedList([ListItem([Link('foo/link', 'foo text')]),
ListItem([Link('bar/link', 'bar text')])])])
htmlobjs = Document(
head=Head(title='Example',
elems=[Keywords(['python', 'html']),
Description('demo page'),
Author('Aaron Hall'),
]),
@aaronchall
aaronchall / demo.py
Last active March 7, 2016 04:35
Python implementation of multiple inheritance for The Codeless Code: Case 83 Consequences
from __future__ import print_function
class Soldier(object):
def __init__(self, rank='noob'):
self.rank = rank
def fight(self, foe):
'''abstract method? fights to death implementation'''
"""Remove redundancy and give function names meaning when using the route decorator.
@route
def home():
return 'hello'
@route
def profile(username):
return 'your name is ' + username
@aaronchall
aaronchall / meta_stack_exchange_question
Created May 6, 2016 12:15
Is this a great formula for a hot network question or is it trolling the SE network?
Is this a great formula for a hot network question or is it trolling the SE network?
Here's a generic and easily repeatable formula for questions that could be asked on probably any site in the Stack Exchange network:
1. I have a problem that places me in a very sympathic position.
2. I have ruled out the obvious answer for arbitrary/bad reasons.
3. What do I do?
This strategy would have several attention gathering effects:
@aaronchall
aaronchall / index.ts
Last active July 26, 2019 02:52
example of writing extension to change behavior of share file
// src/index.ts
import {
JupyterFrontEnd, JupyterFrontEndPlugin
} from '@jupyterlab/application';
import { Clipboard } from '@jupyterlab/apputils';
import { URLExt } from '@jupyterlab/coreutils';
import { IFileBrowserFactory } from '@jupyterlab/filebrowser';
@aaronchall
aaronchall / monads.py
Created August 24, 2019 20:35
Python monads, WIP
from __future__ import annotations
from abc import ABC, abstractmethod, abstractproperty
from functools import partial
def main():
a = 1
b = a + 1 # bind a in b,
c = b * 2 # bind b in c, etc...
d = c ** 3
print(d)