Skip to content

Instantly share code, notes, and snippets.

View marcin-chwedczuk's full-sized avatar

Marcin Chwedczuk marcin-chwedczuk

View GitHub Profile
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace NullChecking {
struct NonNull<T>
where T : class
{
@marcin-chwedczuk
marcin-chwedczuk / Using scopes
Created July 30, 2014 18:32
Using scoped lifestyle windsor.castle
using Castle.MicroKernel.Registration;
using Castle.Windsor;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Castle.MicroKernel.Lifestyle;
namespace Castle_ScopeLifetime {
var s="var s=\x22%\x22; console.log(s.replace(\x22%\x22,s.replace(new RegExp(String.fromCharCode(34),\x22g\x22),String.fromCharCode(92)+\x22x22\x22)))"; console.log(s.replace("%",s.replace(new RegExp(String.fromCharCode(34),"g"),String.fromCharCode(92)+"x22")))
@marcin-chwedczuk
marcin-chwedczuk / game_of_live.tsql
Created March 21, 2015 10:31
Game of live in T-SQL
use TSQL2012;
if exists (select * from sys.schemas where name = 'gol')
begin
drop function gol.global_variable;
drop procedure gol.print_board;
drop procedure gol.init_board;
drop procedure gol.iteration;
drop procedure gol.iterate;
@marcin-chwedczuk
marcin-chwedczuk / setup fake beacon
Created March 28, 2015 13:12
a bunch of hciXXX instruction to setup custom beacon
hciconfig hci0 reset
hciconfig hci0 -a
hciconfig hci0 noscan
sleep 1
hciconfig hci0 noleadv
sleep 1
@marcin-chwedczuk
marcin-chwedczuk / foo.cs
Created October 26, 2015 18:20
Simulating ?. operator in C# 5
using System;
public static class ObjectHelpers {
public static TResult WhenNotNull<T, TResult>(this T @object, Func<T,TResult> expression)
//where T: class
where TResult: class
{
if (@object == null)
return null;
@marcin-chwedczuk
marcin-chwedczuk / foo.js
Created January 2, 2016 18:58
javascript quine 2
(function f() { console.log(['(',f.toString(),')()'].join('')); })()
@marcin-chwedczuk
marcin-chwedczuk / scope_per_method_call_castle_windsor.cs
Created January 30, 2016 09:21
Scope per method call - custom scope
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using Castle.Core;
using Castle.DynamicProxy;
using Castle.MicroKernel;
@marcin-chwedczuk
marcin-chwedczuk / minimax.js
Created May 3, 2016 07:49
TicTacToe with minimax
#!/usr/bin/env node
// board is single array
// [x, x, x,
// x, x, x,
// x, x, x]
// where x may be string 'X', 'O', or null
var readline = require('readline-sync');
@marcin-chwedczuk
marcin-chwedczuk / btree.js
Created May 30, 2016 15:26
BTree implementation in JavaScript
#!/usr/bin/env node
const NKEYS = 4;
function arrayOfSize(size) {
var a = Array(size);
for (var i = 0; i < size; i += 1)
a[i] = null;