exercism fetch sml accumulate


Implement the accumulate operation, which, given a collection and an operation to perform on each element of the collection, returns a new collection containing the result of applying that operation to each element of the input collection.

Given the collection of numbers:

And the operation:

Your code should be able to produce the collection of squares:

Check out the test suite to see the expected function signature.


Keep your hands off that collect/map/fmap/whatchamacallit functionality provided by your standard library! Solve this one yourself using other basic tools instead.

Loading your exercise implementation in PolyML

$ poly --use {exercise}.sml


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

Note: You have to replace {exercise}.

Running the tests

$ 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!


Conversation with James Edward Gray II https://twitter.com/jeg2

Submitting Incomplete Solutions

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