Example code to accompany shapeless-guide.
Scala Shell Batchfile
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
common/src/main/scala Print blank line before/after running a demo Sep 7, 2016
mapping/src/main/scala Created mapping exercise from solution Dec 5, 2016
representations/src/main/scala Better starting point for representations Sep 8, 2016
README.md Update README.md Mar 14, 2017
build.sbt Add `helloworld` project to show everything's working Mar 14, 2017
sbt.sh Add SBT launcher and shell scripts Mar 14, 2017


Shapeless Guide Code

Copyright 2016-17 Dave Gurnell. Licensed Apache 2.0.

This repository contains code for the main examples in The Type Astronaut's Guide to Shapeless.

If you want to discuss the content or exercises with the authors, join us in our chat room on Gitter.


Using the Source Code

This repository contains two branches: one for exercises and one for solutions. The directory structure is the same in each branch.

You will need to have Git and Java and an internet connection to run the exercises. All other dependendencies are either included with the repo or downloaded on demand during compilation.

Notes on Editors and IDEs

If you don't have a particular preference for a Scala editor or IDE, we recommend the Atom editor and a Linux or OS X terminal. See the instructions below to get started.

If you want to use Scala IDE for Eclipse, we recommend using sbteclipse. Follow the instructions on the sbteclipse web page to install it as a global SBT plugin.

If you want to use IntelliJ IDEA, follow the instructions for Importing an SBT Project in the IntelliJ online documentation.

Getting Started on Linux or OS X

To get started:

  1. Clone this repository to a directory on your hard drive, e.g. ~/shapeless-guide-code:

    bash$ git clone https://github.com/underscoreio/shapeless-guide-code.git
  2. Change to the root directory in the repository:

    bash$ cd shapeless-guide-code
  3. Run the sbt.sh script. You may have to wait while SBT downloads various dependencies:

    bash$ ./sbt.sh
    # Lots of output here...
    # The first run will take a while...
  4. Type helloworld/run at the SBT prompt. You may have to wait while SBT downloads various dependencies.

  5. If you see the message "Hello from shapeless!", you're ready to go!

If you have any problems getting started, get in touch on Gitter.