1
exercism fetch sml diamond

Diamond

The diamond kata takes as its input a letter, and outputs it in a diamond shape. Given a letter, it prints a diamond starting with 'A', with the supplied letter at the widest point.

Requirements

Examples

In the following examples, spaces are indicated by · characters.

Diamond for letter 'A':

1
A

Diamond for letter 'C':

1
2
3
4
5
··A··
·B·B·
C···C
·B·B·
··A··

Diamond for letter 'E':

1
2
3
4
5
6
7
8
9
····A····
···B·B···
··C···C··
·D·····D·
E·······E
·D·····D·
··C···C··
···B·B···
····A····

Loading your exercise implementation in PolyML

1
$ poly --use {exercise}.sml

Or:

1
2
$ poly
> use "{exercise}.sml";

Note: You have to replace {exercise}.

Running the tests

1
$ poly -q --use test.sml

Feedback, Issues, Pull Requests

The exercism/sml repository on GitHub is the home for all of the Standard ML 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

Seb Rose http://claysnow.co.uk/recycling-tests-in-tdd/

Submitting Incomplete Solutions

It's possible to submit an incomplete solution so you can see how others have completed the exercise.