Skip to content

Instantly share code, notes, and snippets.

Tuomas Hietanen Thorium

Block or report user

Report or block Thorium

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@Thorium
Thorium / Program.fs
Last active Apr 24, 2019
Creating graphical visualisation of a Markov chain
View Program.fs
module GraphVizSample
open GraphVizWrapper
open GraphVizWrapper.Commands
open GraphVizWrapper.Queries
open System
open System.Configuration
open System.Drawing
open System.IO
@Thorium
Thorium / uaparse.fs
Last active Feb 19, 2019
Parsing UserAgent strings with FSharp
View uaparse.fs
open System
open System.IO
open System.Net
open System.Text.RegularExpressions
let req = HttpWebRequest.Create "https://raw.githubusercontent.com/ua-parser/uap-core/master/regexes.yaml"
let resp = (new StreamReader(req.GetResponse().GetResponseStream())).ReadToEnd()
let lines = resp.Split( [| Environment.NewLine; "\r"; "\n"; "\r\n" |], StringSplitOptions.RemoveEmptyEntries)
/// Minimal YAML-file parsing
let yamlParse =
@Thorium
Thorium / extension.fs
Created May 8, 2017
Visual Studio 2017 extension: Displaying Light Bulb Suggestions
View extension.fs
// Example follows this, translated to FSharp:
// https://msdn.microsoft.com/en-us/library/dn903708.aspx
// Just instead of copy&pasting C#, add a new F# class library and paste this code to there,
// then add that to reference to your C#-project.
// If you want to deploy without C# project, see e.g. this:
// You need to use some VSIX-package to deploy the code:
// https://github.com/fsharp-vsix/FsVSIX
@Thorium
Thorium / BtcPrice.fsx
Created Feb 2, 2017
Bitcoin current price data from blockchain.info
View BtcPrice.fsx
//Using FSharp.Data
type BtcData = FSharp.Data.JsonProvider<"""{
"USD":{"15m":1.1,"last":1.1,"buy":1.1,"sell":1.1,"symbol":"$"},
"EUR":{"15m":1.1,"last":1.1,"buy":1.1,"sell":1.1,"symbol":"€"},
"GBP":{"15m":1.1,"last":1.1,"buy":1.1,"sell":1.1,"symbol":"£"}
}""">
let prices = BtcData.Load("https://blockchain.info/ticker")
//prices.Eur.Buy : val it : decimal = 923.52M (at 02/02/2017)
//prices.Gbp.Sell : val it : decimal = 794.61M (at 02/02/2017)
@Thorium
Thorium / ml.fs
Created Mar 28, 2017
Using machine learning tool Accord.Net from F#
View ml.fs
// This example uses the same data and methods as
// http://accord-framework.net/docs/html/T_Accord_Statistics_Models_Regression_LogisticRegression.htm
#I @"./packages"
#r @"FSharp.Data.2.3.2/lib/net40/FSharp.Data.dll"
#r @"Accord.3.4.0/lib/net45/Accord.dll"
#r @"Accord.MachineLearning.3.4.0/lib/net45/Accord.MachineLearning.dll"
#r @"Accord.Math.3.4.0/lib/net45/Accord.Math.Core.dll"
#r @"Accord.Math.3.4.0/lib/net45/Accord.Math.dll"
#r @"Accord.Statistics.3.4.0/lib/net45/Accord.Statistics.dll"
@Thorium
Thorium / DecisionTree.fs
Last active May 16, 2018
Wine-quality decision-tree using Accord.Net from F#
View DecisionTree.fs
(*
Install-Package FSharp.Data
Install-Package Accord
Install-Package Accord.MachineLearning
Install-Package Accord.Math
Install-Package Accord.Statistics
*)
#if INTERACTIVE
@Thorium
Thorium / bitbucket-pipelines.yml
Last active May 14, 2018
Bitbucket pipelines test to build FSharp repository
View bitbucket-pipelines.yml
# Take FSharp docker image and run Fake build script using Paket FSharp and Gulp.
image: fsharp:latest
pipelines:
default:
- step:
script:
- echo "Runs on branches that don't have specific pipeline."
# Install general utilities for building
- apt-get -qq update
@Thorium
Thorium / BlockChain.fs
Last active Apr 25, 2018
Using NBitcoin to create private BlockChain with F# (FSharp)
View BlockChain.fs
// This is just an initial example / tech-demo.
#if INTERACTIVE
#I "./../packages/NBitcoin/lib/net45/"
#I "./../packages/Newtonsoft.Json/lib/net45"
#r "NBitcoin.dll"
#r "Newtonsoft.Json.dll"
#else
module BlockChain
#endif
@Thorium
Thorium / GoogleAnalytics.ts
Last active Apr 23, 2018
Google Analytics Typescript
View GoogleAnalytics.ts
/// <reference path="./../../paket-files/borisyankov/DefinitelyTyped/google.analytics/ga.d.ts" />
export var gaNewElem : any = {};
export var gaElems : any = {};
function gaInit(){
var currdate : any = new Date();
/* tslint:disable:no-string-literal */
/* tslint:disable:semicolon */
@Thorium
Thorium / gist:1972349
Created Mar 4, 2012
Timestamp with timezone (YYYYMMDDhhmmssffff+zzzz)
View gist:1972349
let myTimeStamp =
let zone = System.TimeZone.CurrentTimeZone.GetUtcOffset System.DateTime.Now
let prefix = match (zone<System.TimeSpan.Zero) with | true -> "-" | _ -> "+"
System.DateTime.UtcNow.ToString("yyyyMMddHHmmssffff") + prefix + zone.ToString("hhss");
You can’t perform that action at this time.