Skip to content

Instantly share code, notes, and snippets.

View apohllo's full-sized avatar

Aleksander Smywiński-Pohl apohllo

View GitHub Profile
{
"cells": [
{
"cell_type": "code",
"execution_count": 83,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
require 'ipaddr'
module Rack
#
# BanHammer is a Rack middleware app that restricts access to your server
# using a black-list of IPv4/IPv6 addresses and ranges.
#
# MIT License - Hal Brodigan (postmodern.mod3 at gmail.com)
#
class BanHammer
# encoding: iso-8859-2
require 'rubygems'
require 'spec'
$LOAD_PATH.unshift('ext')
require 'pg'
describe PGconn do
before( :all ) do
@apohllo
apohllo / mongrel.patch
Created October 24, 2009 00:54
mongrel patch for Ruby 1.9
--- ../../../../../ruby/gems/1.8/gems/mongrel-1.1.5/ext/http11/http11.c 2009-10-08 19:30:16.000000000 +0200
+++ ext/http11/http11.c 2009-10-21 23:34:29.000000000 +0200
@@ -74,7 +74,7 @@
f = rb_str_dup(global_http_prefix);
f = rb_str_buf_cat(f, field, flen);
- for(ch = RSTRING(f)->ptr, end = ch + RSTRING(f)->len; ch < end; ch++) {
+ for(ch = RSTRING_PTR(f), end = ch + RSTRING_LEN(f); ch < end; ch++) {
if(*ch == '-') {
*ch = '_';
module Apohllo
module Synthesis
class Numeral
DIGITS =
%w{zero jeden dwa trzy cztery pięć sześć siedem osiem dziewięć}
INFLECTED_NUMERALS = {
:m1 => {
2 => "dwaj",
module Apohllo
module Synthesis
class Numeral
include Inflector
def initialize(value, det={})
@value = value
@det = det
end
module Apohllo
module Synthesis
module Inflector
def inflect(arg,det)
det = det.dup
lexemes = to_lexemes(arg)
det[:gender] ||= determine_gender(lexemes)
(lexemes.map do |lexeme|
if lexeme.respond_to?(:inflect)
lexeme.inflect(det)
# Trzeba jeszcze rozwiązać kwestię dziewczątka, dzieciątka,
# itp. (2 rodzaj nijaki)
# Przydałoby się również zweryfikować plurale tantum!
Cech: Odmiana liczebników z rzeczownikami
# rodzaj męskorzeczowy
Scenariusz: odmiana liczebnika z rzeczownikiem 'wóz'
Gdy odmieniam 0 x wóz
Wtedy otrzymuję 'zero wozów'
Cech: Odmiana liczebników przez przypadki z rzeczownikami
Scenariusz: dopełniacza dla liczebnika z rzeczownikiem 'wóz'
# rodzaj męskorzeczowy
Scenariusz: celownik dla liczebnika z rzeczownikiem 'wóz'
Gdy przyglądam się 0 x wóz
Wtedy otrzymuję 'zeru wozom'
Gdy przyglądam się 1 x wóz
Cech: Odmiana liczebników
Scenariusz: zamiana liczb na liczebniki główne
Gdy zamieniam 0
Wtedy otrzymuję zero
Gdy zamieniam 1
Wtedy otrzymuję jeden
Gdy zamieniam 2