diff --git a/spec/0_purposes.md b/spec/0_purposes.md index 1c3835e7e..e5b69181c 100644 --- a/spec/0_purposes.md +++ b/spec/0_purposes.md @@ -1,11 +1,11 @@ -# Purposes of Chronicle Map specification +# Purposes of Chronicle Map Specification - - To give ability to write a small, drastically simplified Chronicle Map implementation in Java, - for a specific use-case. It could hard-code many aspects, which the reference implementation have - to handle as abstractions, that is harder for JVM to execute efficiently. Another way of improving - performance is weakening guarantees, implied by the specification and the reference implementation. + - To provide the ability to write a small, drastically simplified Chronicle Map implementation in Java + for a specific use-case. It could hard-code many aspects which the reference implementation has + to handle as abstractions which are harder for the JVM to execute efficiently. Another way of improving + performance is by weakening guarantees implied by the specification and the reference implementation. - - To give ability to write a Chronicle Map implementation in a non-JVM language, C++/C#/whatever. + - To provide the ability to write a Chronicle Map implementation in a non-JVM language e.g. C++, C#. As Chronicle Map is designed for concurrent inter-process access, performance-critical operations on a Chronicle Map instance could be done from a C++ process, while a concurrent Java process is doing some duty tasks such as backup to a rational database. @@ -14,10 +14,10 @@ structure behaviour and correctness. If the reference implementation doesn't follow the specification, it is considered as an implementation bug. - - To give ability for Chronicle Map adopters, database developers and researchers to study - Chronicle Map design and possibly draw own conclusions about it's behaviour, guarantees and - efficiency. The reference implementation is quite complex and it's hard to understand how does it - work for people who are not familiar with the code base, especially for people who doesn't know + - To provide the ability for Chronicle Map adopters, database developers and researchers to study + Chronicle Map design and possibly draw thier own conclusions about it's behaviour, guarantees and + efficiency. The reference implementation is quite complex so it's hard to understand how it + works by just reading the code, especially for people who don't know Java. - - To put rationalization of the design decisions together in one place. \ No newline at end of file + - To keep the rationalization of the design decisions together in one place.