DiffSharp: Differentiable Functional Programming
F# Mathematica C#
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
docs Update boilerplate texts Jan 5, 2016
lib OpenBLAS 0.2.15 binaries Dec 6, 2015
tests Forward and reverse AD of fixed point iterations Mar 28, 2016
.gitattributes Initial commit to add default .gitIgnore and .gitAttribute files. Aug 28, 2014
.gitignore Moving final BLAS/LAPACK code, documentation updates pending Sep 12, 2015
DiffSharp.sln Better download instructions and FAQ Dec 16, 2015
LICENSE.LESSER.txt Moving to LGPL Apr 14, 2015
LICENSE.txt Reorganize Sep 28, 2014
README.md Update README.md Jan 5, 2016
Roadmap.txt Generalize type signatures Jan 11, 2016


DiffSharp: Differentiable Functional Programming

DiffSharp is a functional automatic differentiation (AD) library implemented in the F# language. It supports C# and the other CLI languages. The library is being developed mainly for research applications in machine learning, by Atılım Güneş Baydin and Barak A. Pearlmutter, within the Brain and Computation Lab, National University of Ireland Maynooth.

Please visit the project website for detailed documentation and examples.

You can come and join the Gitter chat room, if you want to chat with us:

Join the chat at https://gitter.im/DiffSharp/DiffSharp

Project statistics

Issue Stats Issue Stats

Current build status

Build status


Copyright (c) 2014–2016, National University of Ireland Maynooth (Atilim Gunes Baydin, Barak A. Pearlmutter)

Written by: Atilim Gunes Baydin & Barak A. Pearlmutter

Brain and Computation Lab
Hamilton Institute & Department of Computer Science
National University of Ireland Maynooth
Maynooth, Co. Kildare


DiffSharp is released under the GNU Lesser General Public License (LGPL) version 3. This means that you can integrate DiffSharp as a shared library into your software, which may be commercial, closed-source, or open-source under any license (including non-GPL), provided that you use the unmodified DiffSharp binary and reproduce the above copyright notice with a link to the DiffSharp website. Permitting uses outside of these license terms may be considered on a by-case basis.

This work is supported by Science Foundation Ireland grant 09/IN.1/I2637.

Other licenses

DiffSharp uses:

  • OpenBLAS by Zhang Xianyi, Wang Qian, Werner Saar (BSD license) for BLAS/LAPACK operations
  • F# Quotations Evaluator by Paul Westcott and others (Unlicense/public domain) for compiling code quotations