Skip to content

Instantly share code, notes, and snippets.

@baroquebobcat
baroquebobcat / Hash.from_xml_using_Nokogiri.rb
Created January 12, 2012 22:56 — forked from dimus/Hash.from_xml using Nokogiri
Adding Hash.from_xml method using Nokogiri
# USAGE: Hash.from_xml:(YOUR_XML_STRING)
#
# - fixes handling of <text> elements
# - prepends namespaces on keys where used including both elements & attributes
# - uses strings instead of symbols to prevent consumption of the symbol table
require 'nokogiri'
# modified from http://stackoverflow.com/questions/1230741/convert-a-nokogiri-document-to-a-ruby-hash/1231297#1231297
class Nokogiri::XML::Node
def namespaced_name
class A(object):
def __getattr__(s,i):
raise Exception('wth')
def raises(self):
"aoeu".nonexistent
@property
def yep(self):
self.raises()
A().yep
export NOTIFY_TIME=10
function timer_start {
previous_command=$this_command
if [ "$BASH_COMMAND" != "timer_stop" ]
then
this_command=$BASH_COMMAND
fi
timer=${timer:-$SECONDS}
function silencing_stderr() {
$* 2>/dev/null
}
function branch_names() {
git br | awk '{print $1}' | grep -v '*' | xargs
}
for branch_name in $(branch_names)
do
import java.util.concurrent.ArrayBlockingQueue
import java.util.concurrent.ConcurrentHashMap
import java.util.concurrent.atomic.AtomicLong
queue_size = 10
queue = ArrayBlockingQueue.new queue_size, true
counts = {"A"=> AtomicLong.new, "B" => AtomicLong.new}
producerA = Thread.new do
while true
@baroquebobcat
baroquebobcat / mirah_0_1_2_notes
Created January 6, 2014 00:53
Mirah 0.1.2 release process notes
mirah 0.1.2 release highlights
- improvements to the new mirrors implementation (try it with -T)
- improvements to the new backend implementation (try it with -N)
- added better casting for methods that return primitives (754cc38f)
- =~, include? macros added to String (Thanks altamic)
- << operator added to StringBuilder
- improved line number recording in new backend
- fixed a few macro expansion related bugs
- Added Apache 2 license to gem metadata
@baroquebobcat
baroquebobcat / mirah_lambda.md
Last active January 2, 2016 04:09
Mirah Lambda Proposal

Mirah Lambda Proposal

Lambda types

  • Stabby / Lambda
  • Block
  • Nested Methods

Stabby / Lambda

$ rake gem
rm -rf build/bootstrap
mkdir -p build/bootstrap
Compiling 10 source files to /Users/nick/hacking/mirah_hacking/mirah/build/bootstrap
/Users/nick/hacking/mirah_hacking/mirah/src/org/mirah/IsolatedResourceLoader.java
/Users/nick/hacking/mirah_hacking/mirah/src/org/mirah/MirahClassLoader.java
/Users/nick/hacking/mirah_hacking/mirah/src/org/mirah/jvm/compiler/Cleaned.java
/Users/nick/hacking/mirah_hacking/mirah/src/org/mirah/jvm/types/Flags.java
/Users/nick/hacking/mirah_hacking/mirah/src/org/mirah/jvm/types/MemberAccess.java
/Users/nick/hacking/mirah_hacking/mirah/src/org/mirah/jvm/types/MemberKind.java
@baroquebobcat
baroquebobcat / symbol_curry.rb
Last active December 31, 2015 18:49
Symbol#curry, because one kind of curry just isn't enough
# add a curry method to symbol for evil/awesome symbol to proc powers.
class Symbol
def curry(n=nil)
->(*args) {
->(obj) {obj.send self, *args}
}.curry(n)
end
def call(*n)
curry.(*n)
@baroquebobcat
baroquebobcat / t.md
Last active December 30, 2015 20:49