Skip to content
An interactive problem website for learning Clojure
Branch: develop
Clone or download
Alex McNamara
Alex McNamara Merge pull request #267 from tclamb/fix-code-golf
Ignore comments in code golf score
Latest commit 25dec05 Nov 2, 2015
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
resources Ignore comments in code golf score Nov 1, 2015
src/foreclojure
test/foreclojure/test Ignore comments in code golf score Nov 1, 2015
.gitignore
4clojure.sh Add basic startup script Sep 25, 2011
LICENSE.html
README.md
load-data.bat Make data_set non-side-effect-y unless you call one of its functions,… May 19, 2011
load-data.sh Make data_set non-side-effect-y unless you call one of its functions,… May 19, 2011
project.clj rc2 Mar 20, 2013

README.md

4Clojure

An interactive problem website for learning Clojure: https://www.4clojure.com.

Contributing

Anyone interested in contributing should check out the Issues page for ideas on what to work on.

Join us in #4clojure on freenode for help or discussion.

Setup instructions for running locally

  • Download and install leiningen.

  • Download and install mongodb.

  • The project uses clojail, which requires a security policy setup in your home directory (because Clojure's eval is unsafe if used improperly). Set up a file called .java.policy in your home directory. The contents should look vaguely like this:

      grant { permission java.security.AllPermission; };
    

    but see the readme of that project for more details.

  • cd to the 4clojure project directory and run lein deps.

  • Start up your mongodb, if you don't have autostart:

      mongod
    
  • For the first time use, you will need to load the problem data. Run the script load-data.sh:

      ./load-data.sh
    
  • Run lein ring server

  • To run the tests: lein test

Contributors

Problem sources:

License

The source code for 4clojure is available under the Eclipse Public License v 1.0. For more information, see LICENSE.html.

You can’t perform that action at this time.