Skip to content

Commit 4f96976

Browse files
committed
Updated readme for the 4.5 release
1 parent 4f3219d commit 4f96976

2 files changed

Lines changed: 22 additions & 14 deletions

File tree

README.adoc

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,12 @@ image::http://www.functionaljava.org/img/logo-600x144.png[]
88

99
Functional Java is an open source library facilitating functional programming in Java. The library implements numerous basic and advanced programming abstractions that assist composition oriented development. Functional Java also serves as a platform for learning functional programming concepts by introducing these concepts using a familiar language.
1010

11-
The library is intended for use in production applications and is thoroughly tested using the technique of automated specification-based testing with ScalaCheck and Functional Java's quickcheck module. Functional Java is compiled with Java 8 targeting Java 7 bytecode. The use of lambdas within the project are backported with the Retro Lambda library, supporting Java versions 5 to 8.
11+
The library is intended for use in production applications and is thoroughly tested using the technique of automated specification-based testing with ScalaCheck and Functional Java's quickcheck module. Functional Java is compiled with Java 8 targeting Java 7 bytecode. The use of lambdas within the project are backported with the Retro Lambda library, supporting Java versions 6 to 8.
1212

1313
Functional Java provides abstractions for the following types:
1414

15-
* Basic Data Structures - total and partial functions, products, unit, option, unbiased and right biased unions (either and validation).
16-
* Immutable Collections - array, list, vector, stream, set, map, finger tree, heterogenous list.
15+
* Basic Data Structures - total and partial functions, products, unit, option, unbiased and right biased unions (either and validation), void.
16+
* Immutable Collections - array, list, vector, stream, set, map, finger tree, heterogenous list, difference list.
1717
* Other Abstractions - monoid, semigroup, natural, random number generator, reader, writer, state, input/output, parser, zipper, specification based testing (quickcheck), actors, optics (lens, prism, fold, traversal and others), concurrency and type conversion.
1818
1919
== URLs
@@ -35,37 +35,43 @@ The Functional Java artifact is published to Maven Central using the group `org.
3535
* Java 8 specific support (`functionaljava-java8`)
3636
* property based testing (`functionaljava-quickcheck`)
3737

38-
The latest stable version is `4.4`. This can be added to your Gradle project by adding the dependencies:
38+
The latest stable version is `4.5`. This can be added to your Gradle project by adding the dependencies:
3939
----
40-
compile "org.functionaljava:functionaljava:4.4"
41-
compile "org.functionaljava:functionaljava-java8:4.4"
42-
compile "org.functionaljava:functionaljava-quickcheck:4.4"
40+
compile "org.functionaljava:functionaljava:4.5"
41+
compile "org.functionaljava:functionaljava-java8:4.5"
42+
compile "org.functionaljava:functionaljava-quickcheck:4.5"
43+
compile "org.functionaljava:functionaljava-java-core:4.5"
4344
----
4445

4546
and in Maven:
4647
----
4748
<dependency>
4849
<groupId>org.functionaljava</groupId>
4950
<artifactId>functionaljava</artifactId>
50-
<version>4.4</version>
51+
<version>4.5</version>
5152
</dependency>
5253
<dependency>
5354
<groupId>org.functionaljava</groupId>
5455
<artifactId>functionaljava-java8</artifactId>
55-
<version>4.4</version>
56+
<version>4.5</version>
5657
</dependency>
5758
<dependency>
5859
<groupId>org.functionaljava</groupId>
5960
<artifactId>functionaljava-quickcheck</artifactId>
60-
<version>4.4</version>
61+
<version>4.5</version>
62+
</dependency>
63+
<dependency>
64+
<groupId>org.functionaljava</groupId>
65+
<artifactId>functionaljava-java-core</artifactId>
66+
<version>4.5</version>
6167
</dependency>
6268
----
6369

6470
== Building
6571

66-
FunctionalJava uses the Retro Lambda project to backport Java 8 lambdas to Java 7 bytecode. This requires access to both JDK 7 and 8. The build system requires the environment variables `JAVA7_HOME` and `JAVA8_HOME` to refer to the appropriate directories.
72+
FunctionalJava uses the Retro Lambda project to backport Java 8 lambdas to Java 6 bytecode. This requires access to both JDK 6 and 8. The build system requires the environment variables `JAVA6_HOME` and `JAVA8_HOME` to refer to the appropriate directories.
6773

68-
Building is done using Gradle 2.4. In the root directory run:
74+
Building is done using Gradle 2.10. In the root directory run:
6975
----
7076
./gradlew
7177
----
@@ -94,6 +100,7 @@ A more complete description of the features mentioned above are:
94100
** Immutable set implementation using a red/black tree (`fj.data.Set`).
95101
** Immutable multi-way tree - aka rose tree (`fj.data.Tree`).
96102
** Immutable tree-map using a red/black tree implementation (`fj.data.TreeMap`).
103+
** Difference lists, a highly performant list.
97104
* Other Abstractions
98105
** Monoid (`fj.Monoid`).
99106
** Semigroup (`fj.Semigroup`).
@@ -109,6 +116,7 @@ A more complete description of the features mentioned above are:
109116
** Automated specification-based testing framework (`fj.test`).
110117
** Fully operational Actors for parallel computations (`fj.control.parallel`) and layered abstractions such as parallel-map, map-reduce, parallel-zip.
111118
** Optics for updating immutable data including lens, prism, iso, optional, traversal, getter, fold and setter. Inspired by the Scala Monocle library (https://github.com/julien-truffaut/Monocle) and the Haskell lens library (https://github.com/ekmett/lens).
119+
** Void, a logically uninhabited type.
112120

113121
== License
114122

etc/release-process.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,9 @@ Create tag:
3333

3434
Create the next version of the release notes with empty fields using the template.
3535

36-
Update the website and Github README.adoc. This includes adding any features to the home page and features page. Updating the doc page with javadoc links. Update the download page with a link to the latest release notes.
37-
3836
Copy the generated javadoc for each component to the website repositories' master branch under /javadoc/<version>. Commit the javadoc and push.
3937

38+
Update the website and Github README.adoc. This includes adding any features to the home page and features page. Updating the doc page with javadoc links. Update the download page with a link to the latest release notes.
39+
4040
Send a message to the group and social media about the release, TODO.
4141

0 commit comments

Comments
 (0)