Marnee Dearman (KG7SIO)
Hashcash in F#
Implementing the hashcash algorithm in F#
Why am I doing this?
The hashcash algorithm forms this basis of cryptocurrencies like Bitcoin. I have been getting into this kind of technology, like the blockchain and cryptocurrency, lately (this is the future!) and I thought it would be fun to try to implement the hashcash algorithm in F#. Plus the proof-of-work system seems to . . .
Pure F# Web API and Team City Build
How I fixed the broken build
We use TeamCity at work for continuous integration. I recently added a Pure F# Web API to a solution. Everything was building but this one project. The build (with FAKE) ran just fine locally, but in the Team City environment, running the same FAKE script, the build broke.
And all I got was this fun error:
D:\TeamCity\buildAgent\ . . .
An IVR with Neo4j and F# -- Part 2 A
Modeling the IVR domain with algebraic data types
Why am I doing this?
In part 1 I talked about getting started on my graph-based IVR system. I started with modeling the authentication sub-graph. I wrote some Cypher queries to build the graph in Neo4j. In this part I am going to talk about how I modeled the graph in F# using algebraic data types, namely discriminated unions and . . .
Posted in: algebraic data typesdiscriminated unionf#fsunitfunctional programminggraphsivrneo4jtestingtuplesxunit
F# and xUnit Class Fixtures
Startup and teardown test modules
Why am I doing this?
I use a combination of F#, xUnit, and FsUnit to do my unit testing on .NET. I want to run a database setup script at the start of some test modules. In this case, according to the xUnit documentation, I need to use IClassFixture (or ICollectionFixture). I recently wanted to figure out how to make this happen in . . .
An IVR with Neo4j and F# -- Part 1
Part 1: building the Neo4j graph database backend
Why am I doing this?
I develop something called the Interactive Customer Management System (ICMS). This lets customers enter orders for petroleum products from oil and gas terminals in India. Customers can get the status of their orders via SMS and IVR (interactive voice response). Developing a low-cost and simple IVR system is not . . .
Cover image credit: http://sciencevsmagic.net/fractal/#0060,0090,1,1,0,0,1