New Fetch
This commit is contained in:
5
ocaml/hello-world/.merlin
Normal file
5
ocaml/hello-world/.merlin
Normal file
@@ -0,0 +1,5 @@
|
||||
PKG findlib
|
||||
PKG core
|
||||
PKG ounit
|
||||
S *
|
||||
B *
|
11
ocaml/hello-world/Makefile
Normal file
11
ocaml/hello-world/Makefile
Normal file
@@ -0,0 +1,11 @@
|
||||
test: test.native
|
||||
@./test.native
|
||||
|
||||
test.native: *.ml *.ml
|
||||
@corebuild -r -quiet -pkg oUnit test.native
|
||||
|
||||
clean:
|
||||
rm -rf _build
|
||||
rm -f test.native
|
||||
|
||||
.PHONY: clean
|
61
ocaml/hello-world/README.md
Normal file
61
ocaml/hello-world/README.md
Normal file
@@ -0,0 +1,61 @@
|
||||
# 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.
|
||||
|
||||
|
||||
## Getting Started
|
||||
For installation and learning resources, refer to the
|
||||
[exercism help page](http://exercism.io/languages/ocaml).
|
||||
|
||||
## Installation
|
||||
To work on the exercises, you will need `Opam` and `Core`. Consult [opam](https://opam.ocaml.org) website for instructions on how to install `opam` for your OS. Once `opam` is installed open a terminal window and run the following command to install core:
|
||||
|
||||
```bash
|
||||
opam install core
|
||||
```
|
||||
|
||||
To run the tests you will need `OUnit`. Install it using `opam`:
|
||||
|
||||
```bash
|
||||
opam install ounit
|
||||
```
|
||||
|
||||
## Running Tests
|
||||
A Makefile is provided with a default target to compile your solution and run the tests. At the command line, type:
|
||||
|
||||
```bash
|
||||
make
|
||||
```
|
||||
|
||||
## Interactive Shell
|
||||
`utop` is a command line program which allows you to run Ocaml code interactively. The easiest way to install it is via opam:
|
||||
```bash
|
||||
opam install utop
|
||||
```
|
||||
Consult [utop](https://github.com/diml/utop/blob/master/README.md) for more detail.
|
||||
|
||||
## Feedback, Issues, Pull Requests
|
||||
The [exercism/ocaml](https://github.com/exercism/ocaml) repository on
|
||||
GitHub is the home for all of the Ocaml exercises.
|
||||
|
||||
If you have feedback about an exercise, or want to help implementing a new
|
||||
one, head over there and create an issue. We'll do our best to help you!
|
||||
|
||||
## 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.
|
1
ocaml/hello-world/hello_world.ml
Normal file
1
ocaml/hello-world/hello_world.ml
Normal file
@@ -0,0 +1 @@
|
||||
let hello = "Change me"
|
4
ocaml/hello-world/hello_world.mli
Normal file
4
ocaml/hello-world/hello_world.mli
Normal file
@@ -0,0 +1,4 @@
|
||||
(*
|
||||
Returns "Hello, World!"
|
||||
*)
|
||||
val hello: string
|
14
ocaml/hello-world/test.ml
Normal file
14
ocaml/hello-world/test.ml
Normal file
@@ -0,0 +1,14 @@
|
||||
(* Test/exercise version: "1.0.0" *)
|
||||
|
||||
open Core
|
||||
open OUnit2
|
||||
open Hello_world
|
||||
|
||||
let ae exp got _test_ctxt = assert_equal ~printer:String.to_string exp got
|
||||
|
||||
let tests = [
|
||||
"Say Hi!" >:: ae "Hello, World!" hello;
|
||||
]
|
||||
|
||||
let () =
|
||||
run_test_tt_main ("Hello World tests" >::: tests)
|
Reference in New Issue
Block a user