Browse Source

Starting the Clojure track

master
Julio Biason 4 years ago
parent
commit
10c41a7806
  1. 1
      clojure/hello-world/.exercism/metadata.json
  2. 1
      clojure/hello-world/.lein-failures
  3. 51
      clojure/hello-world/README.md
  4. 4
      clojure/hello-world/project.clj
  5. 5
      clojure/hello-world/src/hello_world.clj
  6. 3
      clojure/hello-world/target/classes/META-INF/maven/hello-world/hello-world/pom.properties
  7. 1
      clojure/hello-world/target/stale/leiningen.core.classpath.extract-native-dependencies
  8. 6
      clojure/hello-world/test/hello_world_test.clj

1
clojure/hello-world/.exercism/metadata.json

@ -0,0 +1 @@
{"track":"clojure","exercise":"hello-world","id":"180434dc45db47aa9b500d839cdb84fa","url":"https://exercism.io/my/solutions/180434dc45db47aa9b500d839cdb84fa","handle":"JBiason","is_requester":true,"auto_approve":true}

1
clojure/hello-world/.lein-failures

@ -0,0 +1 @@
{}

51
clojure/hello-world/README.md

@ -0,0 +1,51 @@
# Hello World
The classical introductory exercise. Just say "Hello, World!".
["Hello, World!"](http://en.wikipedia.org/wiki/%22Hello,_world!%22_program) is
the traditional first program for beginning programming in a new language
or environment.
The objectives are simple:
- Write a function that returns the string "Hello, World!".
- Run the test suite and make sure that it succeeds.
- Submit your solution and check it at the website.
If everything goes well, you will be ready to fetch your first real exercise.
### Project Structure
Clojure exercises in exercism use [leiningen](http://leiningen.org/) to configure and run your code
and use [leiningen standard directory structure](https://github.com/technomancy/leiningen/blob/master/doc/TUTORIAL.md#directory-layout).
You will find a test file named `hello_world_test.clj` inside `test` directory.
Write your code in `src/hello_world.clj`. It should use the namespace `hello-world` so that tests can pick it up.
### Running tests
Run the tests using `lein test` command and make them pass:
```
$ lein test
lein test hello-world-test
Ran 1 tests containing 1 assertions.
0 failures, 0 errors.
```
Then submit the exercise using:
```
$ exercism submit src/hello_world.clj
```
For more detailed instructions and learning resources refer [exercism's clojure language page](http://exercism.io/languages/clojure).
## Source
This is an exercise to introduce users to using Exercism [http://en.wikipedia.org/wiki/%22Hello,_world!%22_program](http://en.wikipedia.org/wiki/%22Hello,_world!%22_program)
## Submitting Incomplete Solutions
It's possible to submit an incomplete solution so you can see how others have completed the exercise.

4
clojure/hello-world/project.clj

@ -0,0 +1,4 @@
(defproject hello-world "0.1.0-SNAPSHOT"
:description "hello-world exercise."
:url "https://github.com/exercism/clojure/tree/master/exercises/hello-world"
:dependencies [[org.clojure/clojure "1.10.0"]])

5
clojure/hello-world/src/hello_world.clj

@ -0,0 +1,5 @@
(ns hello-world)
(defn hello [] ;; <- arglist goes here
"Hello, World!"
)

3
clojure/hello-world/target/classes/META-INF/maven/hello-world/hello-world/pom.properties

@ -0,0 +1,3 @@
groupId=hello-world
artifactId=hello-world
version=0.1.0-SNAPSHOT

1
clojure/hello-world/target/stale/leiningen.core.classpath.extract-native-dependencies

@ -0,0 +1 @@
[{:dependencies {org.clojure/clojure {:vsn "1.10.0", :native-prefix nil}, org.clojure/spec.alpha {:vsn "0.2.176", :native-prefix nil}, org.clojure/core.specs.alpha {:vsn "0.2.44", :native-prefix nil}, nrepl {:vsn "0.6.0", :native-prefix nil}, clojure-complete {:vsn "0.2.5", :native-prefix nil}}, :native-path "target/native"} {:native-path "target/native", :dependencies {org.clojure/clojure {:vsn "1.10.0", :native-prefix nil, :native? false}, org.clojure/spec.alpha {:vsn "0.2.176", :native-prefix nil, :native? false}, org.clojure/core.specs.alpha {:vsn "0.2.44", :native-prefix nil, :native? false}, nrepl {:vsn "0.6.0", :native-prefix nil, :native? false}, clojure-complete {:vsn "0.2.5", :native-prefix nil, :native? false}}}]

6
clojure/hello-world/test/hello_world_test.clj

@ -0,0 +1,6 @@
(ns hello-world-test
(:require [clojure.test :refer [deftest is]]
hello-world))
(deftest hello-world-test
(is (= "Hello, World!" (hello-world/hello))))
Loading…
Cancel
Save