Skip to content

Instantly share code, notes, and snippets.

View akimboyko's full-sized avatar
🙃

Akim Boyko akimboyko

🙃
View GitHub Profile
@akimboyko
akimboyko / simple_tcp_server_with_SO_REUSEPORT.py
Last active April 23, 2019 17:29
Let's play with a simple TCP server with SO_REUSEPORT
View simple_tcp_server_with_SO_REUSEPORT.py
import socket
import sys
from contextlib import contextmanager
import click
so_reuseport = socket.SO_REUSEPORT
@contextmanager
@akimboyko
akimboyko / Dockerfile
Created December 20, 2015 06:57
Dockerfile for Akka.NET on Mono
View Dockerfile
FROM mono:latest
MAINTAINER Akim Boyko "akim dot boyko at gmail.com" version: 0.1
ENV AKKADIR /akka
RUN mkdir -p $AKKADIR
WORKDIR $AKKADIR
RUN mozroots --import --sync
@akimboyko
akimboyko / Dockerfile
Last active August 29, 2015 14:18
Configure and run Docker container for course "Text Retrieval and Search Engines" by ChengXiang Zhai at University of Illinois at Urbana-Champaign
View Dockerfile
# How to build
# docker build -t textretrieval-001 .
# #run and name it
# docker run --name meta -i -t textretrieval-001
# #run and mount directory
# docker run -it -v /mnt/programming:/mnt/programming textretrieval-001:latest
FROM ubuntu:latest
MAINTAINER Akim Boyko "akim dot boyko at gmail.com" version: 0.1
@akimboyko
akimboyko / 1readme.md
Created January 18, 2015 13:25
F# Interactive configuration for Machine Learning tasks
View 1readme.md

F# tricks

  • Use 64-bit configuration. At Visual Studio switch 'Tools/Options/F# tools/F# Interactive/64-bit F# Interactive' should be "true"
  • Tune Fsi.exe and FsiAnyCPU.exe configuration in “c:\Program Files (x86)\Microsoft SDKs\F#<version>\Framework<version>\” ** — specifies whether the common language runtime runs server garbage collection. ** — specifies whether the common language runtime runs garbage collection on a separate thread. ** — on 64-bit platforms, enables arrays that are greater than 2 gigabytes (GB) in total size.
@akimboyko
akimboyko / !readmt.md
Last active July 26, 2016 20:08
How to disable FSharpLint while building using nCrunch?
View !readmt.md

Configure FSharpLint

Including The Task In Your Project's Project File Afterwards you will get following build error:

The "FSharpLintTask" task failed unexpectedly.
System.IO.FileNotFoundException: Could not load file or assembly 'FSharpLint.Application, Version=0.1.11.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
File name: 'FSharpLint.Application, Version=0.1.11.0, Culture=neutral, PublicKeyToken=null'

nCrunch conditional build behaviour

@akimboyko
akimboyko / Sample01.cs
Created December 11, 2014 09:44
F# decompiled pattern matching
View Sample01.cs
// Decompiled with JetBrains decompiler
// Type: FSharpParts.FSharpParts
// Assembly: FSharpParts, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 54894392-FF35-398D-A745-038392438954
// Assembly location: D:\temp\SharpExperiments\FSharpParts\bin\Debug\FSharpParts.dll
using CSharpParts;
using Microsoft.FSharp.Core;
namespace FSharpParts
@akimboyko
akimboyko / ActivePattern01.fsx
Last active August 29, 2015 14:10
Active Pattern sample from F#, THIS AINT A GAME by ANDREA MAGNORSKY http://www.roundcrisis.com/presentations/fsharp_this_aint_a_game/index.html#/
View ActivePattern01.fsx
let (|SpaceKey|) (keyboard:KeyboardInput) =
keyboard.KeyPressed(Key.Space)
let (|Hold100ms|) (keyboard:KeyboardInput) =
keyboard.KeyPressedFor(Key.I, 100)
match DualityApp.Keyboard with
| SpaceKey true & Hold100ms false -> playerGo Jump
| SpaceKey true & Hold100ms true -> playerGo DoubleJump
@akimboyko
akimboyko / 01_SayHello.fsx
Last active May 28, 2023 13:00
Samples from "Actor-based Concurrency with F# and Akka.NET" http://bit.ly/FSharpAkkaNET
View 01_SayHello.fsx
#time "on"
#load "Bootstrap.fsx"
open System
open Akka.Actor
open Akka.Configuration
open Akka.FSharp
open Akka.TestKit
// #Using Actor
@akimboyko
akimboyko / !Results.md
Created December 1, 2014 06:46
Comparing executing time using Pseq and ParStream while preprocessing 1.4GB text file
View !Results.md

Using ParStream

  • Real: 00:00:32.700, CPU: 00:02:01.165, GC gen0: 285, gen1: 80, gen2: 5
  • Real: 00:00:31.421, CPU: 00:01:59.621, GC gen0: 234, gen1: 65, gen2: 4
  • Real: 00:00:32.865, CPU: 00:02:02.335, GC gen0: 250, gen1: 70, gen2: 5
  • Average 32328.7ms

Using PSeq

  • Real: 00:00:34.108, CPU: 00:02:06.470, GC gen0: 203, gen1: 58, gen2: 5
  • Real: 00:00:33.386, CPU: 00:02:06.392, GC gen0: 224, gen1: 63, gen2: 5
  • Real: 00:00:33.720, CPU: 00:02:07.764, GC gen0: 218, gen1: 63, gen2: 5