New Fetch

This commit is contained in:
2017-08-12 09:01:07 -05:00
parent ba838ca4fb
commit a9630f6ee8
58 changed files with 2530 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
PKG findlib
PKG core
PKG ounit
S *
B *

View 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

View 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.

View File

@@ -0,0 +1 @@
let hello = "Change me"

View File

@@ -0,0 +1,4 @@
(*
Returns "Hello, World!"
*)
val hello: string

14
ocaml/hello-world/test.ml Normal file
View 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)