# All Your Base in Haskell

#### Convert a number, represented as a sequence of digits in one base, to any other base.

1 | ```
exercism fetch haskell all-your-base
``` |

# All Your Base

Convert a number, represented as a sequence of digits in one base, to any other base.

Implement general base conversion. Given a number in base **a**,
represented as a sequence of digits, convert it to base **b**.

## Note

- Try to implement the conversion yourself. Do not use something else to perform the conversion for you.

## About Positional Notation

In positional notation, a number in base **b** can be understood as a linear
combination of powers of **b**.

The number 42, *in base 10*, means:

(4 * 10^{1)} + (2 * 10^{0)}

The number 101010, *in base 2*, means:

(1 * 2^{5)} + (0 * 2^{4)} + (1 * 2^{3)} + (0 * 2^{2)} + (1 * 2^{1)} + (0 * 2^{0)}

The number 1120, *in base 3*, means:

(1 * 3^{3)} + (1 * 3^{2)} + (2 * 3^{1)} + (0 * 3^{0)}

I think you got the idea!

*Yes. Those three numbers above are exactly the same. Congratulations!*

## Getting Started

For installation and learning resources, refer to the exercism help page.

## Running the tests

To run the test suite, execute the following command:

1 |
```
stack test
``` |

#### If you get an error message like this...

1 |
```
No .cabal file found in directory
``` |

You are probably running an old stack version and need to upgrade it.

#### Otherwise, if you get an error message like this...

1 2 |
No compiler found, expected minor version match with... Try running "stack setup" to install the correct GHC... |

Just do as it says and it will download and install the correct compiler version:

1 |
```
stack setup
``` |

## Running *GHCi*

If you want to play with your solution in GHCi, just run the command:

1 |
```
stack ghci
``` |

## Feedback, Issues, Pull Requests

The exercism/haskell repository on GitHub is the home for all of the Haskell 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!

## Submitting Incomplete Solutions

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