All Projects → fsprojects → Ifsharp

fsprojects / Ifsharp

Licence: bsd-3-clause
F# for Jupyter Notebooks

Projects that are alternatives of or similar to Ifsharp

Tensorwatch
Debugging, monitoring and visualization for Python Machine Learning and Data Science
Stars: ✭ 3,191 (+652.59%)
Mutual labels:  jupyter-notebook, jupyter
Ielixir
Jupyter's kernel for Elixir programming language
Stars: ✭ 312 (-26.42%)
Mutual labels:  jupyter-notebook, jupyter
Notebook As Pdf
Save Jupyter Notebooks as PDF
Stars: ✭ 290 (-31.6%)
Mutual labels:  jupyter-notebook, jupyter
Geopython
Notebooks and libraries for spatial/geo Python explorations
Stars: ✭ 268 (-36.79%)
Mutual labels:  jupyter-notebook, jupyter
Vscodejupyter
Jupyter for Visual Studio Code
Stars: ✭ 337 (-20.52%)
Mutual labels:  jupyter-notebook, jupyter
Gophernotes
The Go kernel for Jupyter notebooks and nteract.
Stars: ✭ 3,100 (+631.13%)
Mutual labels:  jupyter-notebook, jupyter
Vimpyter
Edit your Jupyter notebooks in Vim/Neovim
Stars: ✭ 308 (-27.36%)
Mutual labels:  jupyter-notebook, jupyter
Football Crunching
Analysis and datasets about football (soccer)
Stars: ✭ 252 (-40.57%)
Mutual labels:  jupyter-notebook, jupyter
Homemade Machine Learning
🤖 Python examples of popular machine learning algorithms with interactive Jupyter demos and math being explained
Stars: ✭ 18,594 (+4285.38%)
Mutual labels:  jupyter-notebook, jupyter
Cc150
《程序员面试金典》(cc150)
Stars: ✭ 326 (-23.11%)
Mutual labels:  jupyter-notebook, jupyter
Icsharp
C# kernel for Jupyter
Stars: ✭ 263 (-37.97%)
Mutual labels:  jupyter-notebook, jupyter
Pytorch Original Transformer
My implementation of the original transformer model (Vaswani et al.). I've additionally included the playground.py file for visualizing otherwise seemingly hard concepts. Currently included IWSLT pretrained models.
Stars: ✭ 411 (-3.07%)
Mutual labels:  jupyter-notebook, jupyter
Spark Jupyter Aws
A guide on how to set up Jupyter with Pyspark painlessly on AWS EC2 clusters, with S3 I/O support
Stars: ✭ 259 (-38.92%)
Mutual labels:  jupyter-notebook, jupyter
Hands On Nltk Tutorial
The hands-on NLTK tutorial for NLP in Python
Stars: ✭ 419 (-1.18%)
Mutual labels:  jupyter-notebook, jupyter
Spacy Notebooks
💫 Jupyter notebooks for spaCy examples and tutorials
Stars: ✭ 255 (-39.86%)
Mutual labels:  jupyter-notebook, jupyter
Spyder Notebook
Jupyter notebook integration with Spyder
Stars: ✭ 298 (-29.72%)
Mutual labels:  jupyter-notebook, jupyter
Jupyter Tips And Tricks
Using Project Jupyter for data science.
Stars: ✭ 245 (-42.22%)
Mutual labels:  jupyter-notebook, jupyter
Nbdev
Create delightful python projects using Jupyter Notebooks
Stars: ✭ 3,061 (+621.93%)
Mutual labels:  jupyter-notebook, jupyter
Jupyter Edu Book
Teaching and Learning with Jupyter
Stars: ✭ 325 (-23.35%)
Mutual labels:  jupyter-notebook, jupyter
Quantitative Notebooks
Educational notebooks on quantitative finance, algorithmic trading, financial modelling and investment strategy
Stars: ✭ 356 (-16.04%)
Mutual labels:  jupyter-notebook, jupyter
Build status Linux macOS Windows
.NET Framework / Mono Build Status Build Status
.NET Core (experimental) Build Status Build Status Build Status

F# and Jupyter

This implements F# for Jupyter notebooks. View the Feature Notebook for some of the features that are included.

.NET Interactive (alternative)

There's related project of .NET Interactive which was inspired by this one but a completly rethought approach with integrated package management, VS Code support, and variable sharing between languages. If you're moving to .NET Core support it's definitely worth checking out. There's a great video from cartermp demoing some of the features: https://youtu.be/_QnbV6CAWXc?t=1298

Getting Started

Docker

To run using a Docker container on Linux/macOS:

docker run -v $PWD:/notebooks -p 8888:8888 fsprojects/ifsharp

or with PowerShell on Windows:

docker run -v ${PWD}:/notebooks -p 8888:8888 fsprojects/ifsharp

The container exposes your current directory as a volume called notebooks where the files get saved. Open with

http://localhost:8888

and enter the token printed by the docker container startup, or set up a password.

Notes:

  • Add -p <your_port>:8888 if a different port mapping is required.

  • If using Windows you must enable file sharing for docker on that drive.

Azure Notebooks

You can use Jupyter F# Notebooks with free server-side execution at Azure Notebooks. If you select "Show me some samples", then there is an "Introduction to F#" which guides you through the language and its use in Jupyter.

Windows Local Installation and Use

  1. Download Anaconda for Python 3.6

  2. Launch Anaconda3-4.4.0-Windows-x86_64.exe (or later exe should work, file an issue if you have issues) Click through the installation wizard, choosing the given install location. At the 'advanced installation options' screen shown below, select "Add Anaconda to my PATH environment variable". The installer warns against this step, as it can clash with previously installed software, however it's currently essential for running IfSharp. Now install.

    This should also install Jupyter: you may check this by entering 'jupyter notebook' into the Anaconda console window. If Jupyter does not launch (it should launch in the browser), install using 'pip install jupyter', or by following Jupyter instructions.

    Installation screenshot

  3. Download the latest IfSharp zip release

  4. Run IfSharp.exe (IfSharp application icon).

Jupyter will start and a notebook with F# can be selected. This can be run via "jupyter notebook" in future

Troubleshooting

If the launch fails in the console window, check that the Anaconda version used is currently added to the path. If not, uninstalling Anaconda and reinstalling using instructions 1-

macOS Local Installation and Use

  1. Install Jupyter via pip or Anaconda etc.

  2. Install Mono (tested Mono 6.6.0)

  3. Download the latest IfSharp zip release

  4. Unzip the release then run mono ifsharp.exe

Jupyter will start and a notebook with F# can be selected. This can be run via "jupyter notebook" in future

Linux Local Installation and Use

  1. Install Jupyter via pip or Anaconda etc.

  2. Install Mono (tested Mono 5.18, "mono-complete" recommended).

  3. Download the latest IfSharp zip release

  4. Unzip the release then run mono ifsharp.exe (this sets up the Jupyter kernel files in ~/.local/share/jupyter/kernels/ifsharp/)

Jupyter will start and a notebook with F# can be selected. This can be run via "jupyter notebook" in future

Linux Local Installation (HDInsights)

  1. Follow instructions to install or update Mono on HDInsights.

  2. SSH into the HDInsights cluster.

  3. Download the latest IfSharp zip release

# create ifsharp folder under /tmp
mkdir ifsharp
cd ifsharp
wget https://github.com/fsprojects/IfSharp/releases/download/v3.0.4/IfSharp.v3.0.4.zip
unzip IfSharp.v3.0.4.zip
chmod +x ifsharp.exe
  1. From the Azure portal, open your cluster. See List and show clusters for the instructions. The cluster is opened in a new portal blade.

  2. From the Quick links section, click Cluster dashboards to open the Cluster dashboards blade. If you don't see Quick Links, click Overview from the left menu on the blade.

  3. Click Jupyter Notebook. If prompted, enter the admin credentials for the cluster.

    [!NOTE] You may also reach the Jupyter notebook on Spark cluster by opening the following URL in your browser. Replace CLUSTERNAME with the name of your cluster:

    https://CLUSTERNAME.azurehdinsight.net/jupyter

  4. Click New, and then click Terminal.

  5. In the terminal window cd into the /tmp/ifsharp/ folder and using mono, run the installer:

cd /tmp/ifsharp
mono ifsharp.exe
  1. Back on the Jupyter homepage, click New and you will now see the F# kernel installed.

Screenshots

Intellisense

Intellisense Example #1


Intellisense Example #2

Integrated NuGet (via Paket)

NuGet Example

Inline Error Messages

Inline Error Message

Development Guide

Building Docker image locally

Build the container with:

docker build -t fsprojects/ifsharp:local .

Compatibility

IfSharp supports Jupyter 5.7.7 and works with both Python 2.X and Python 3.X

If you need IPython 1.x or 2.x support please see the archived https://github.com/fsprojects/IfSharp/tree/ipython-archive

Automatic Installation

Previous releases for the IPython notebook are here: release repository. Automatic installs for Jupyter may be provided in the future. Contributions are welcome!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].