This is an automated email from the ASF dual-hosted git repository.
git-site-role pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/groovy-dev-site.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 4f0f50d 2025/02/12 06:36:06: Generated dev website from
groovy-website@ddb0131
4f0f50d is described below
commit 4f0f50d344c7c01982e8b86658cf5dd206315d78
Author: jenkins <[email protected]>
AuthorDate: Wed Feb 12 06:36:06 2025 +0000
2025/02/12 06:36:06: Generated dev website from groovy-website@ddb0131
---
blog/adventures-with-groovyfx.html | 2 +-
blog/classifying-iris-flowers-with-deep.html | 2 +-
blog/comparators-and-sorting-in-groovy.html | 2 +-
blog/deck-of-cards-with-groovy.html | 2 +-
blog/deep-learning-and-eclipse-collections.html | 2 +-
blog/detecting-objects-with-groovy-the.html | 2 +-
blog/feed.atom | 16 +--
blog/fruity-eclipse-collections.html | 2 +-
blog/gmavenplus-1-6-2-released.html | 2 +-
blog/groovy-2-4-16-released.html | 2 +-
blog/groovy-2-4-16-windows.html | 2 +-
blog/groovy-2-4-17-released.html | 2 +-
blog/groovy-2-5-0-released.html | 2 +-
blog/groovy-2-5-1-released.html | 2 +-
blog/groovy-2-5-2-released.html | 2 +-
blog/groovy-2-5-2-windows.html | 2 +-
blog/groovy-2-5-3-released.html | 2 +-
blog/groovy-2-5-3-windows.html | 2 +-
blog/groovy-2-5-4-released.html | 2 +-
blog/groovy-2-5-4-windows.html | 2 +-
blog/groovy-2-5-5-released.html | 2 +-
blog/groovy-2-5-5-windows.html | 2 +-
blog/groovy-2-5-6-released.html | 2 +-
blog/groovy-2-5-7-and.html | 2 +-
blog/groovy-2-5-7-released.html | 2 +-
blog/groovy-2-5-clibuilder-renewal.html | 2 +-
blog/groovy-3-0-0-alpha.html | 2 +-
blog/groovy-3-0-0-alpha1.html | 2 +-
blog/groovy-3-0-0-beta.html | 2 +-
blog/groovy-3-0-0-beta1.html | 2 +-
blog/groovy-3-0-0-beta2.html | 2 +-
blog/groovy-4-0-3-released.html | 2 +-
blog/groovy-dauphine.html | 2 +-
blog/groovy-haiku-processing.html | 2 +-
blog/groovy-list-processing-cheat-sheet.html | 2 +-
blog/groovy-lucene.html | 2 +-
blog/groovy-null-processing.html | 2 +-
blog/groovy-record-performance.html | 2 +-
blog/groovy-records.html | 2 +-
blog/groovy-release-train-4-0.html | 2 +-
blog/groovy-sequenced-collections.html | 2 +-
blog/groovy-text-similarity.html | 140 +++++++++++++++++------
blog/helloworldemoji.html | 2 +-
blog/index.html | 4 +-
blog/lego-bricks-with-groovy.html | 2 +-
blog/matrix-calculations-with-groovy-apache.html | 2 +-
blog/parsing-json-with-groovy.html | 2 +-
blog/reading-and-writing-csv-files.html | 2 +-
blog/seasons-greetings-emoji.html | 2 +-
blog/set-operations-with-groovy.html | 2 +-
blog/using-groovy-with-apache-wayang.html | 2 +-
blog/whiskey-clustering-with-groovy-and.html | 2 +-
blog/wordle-checker.html | 2 +-
blog/zipping-collections-with-groovy.html | 2 +-
54 files changed, 165 insertions(+), 97 deletions(-)
diff --git a/blog/adventures-with-groovyfx.html
b/blog/adventures-with-groovyfx.html
index eb0be8d..cc05ccd 100644
--- a/blog/adventures-with-groovyfx.html
+++ b/blog/adventures-with-groovyfx.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Adventures with GroovyFX</a></li><li><a
href='#_further_information' class='anchor-link'>Further
information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding:
0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./deep-learning-an [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Adventures with GroovyFX</a></li><li><a
href='#_further_information' class='anchor-link'>Further
information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding:
0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./set-operations-w [...]
<div class="sectionbody">
<div class="paragraph">
<p>This blog looks at a <a href="http://groovyfx.org/">GroovyFX</a> version of
a <a
href="https://donraab.medium.com/my-weird-and-wonderful-first-adventures-with-javafx-6efe3b1923c8">ToDo
application originally written in JavaFX</a>.
diff --git a/blog/classifying-iris-flowers-with-deep.html
b/blog/classifying-iris-flowers-with-deep.html
index 01adfea..5fa0464 100644
--- a/blog/classifying-iris-flowers-with-deep.html
+++ b/blog/classifying-iris-flowers-with-deep.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Classifying Iris Flowers with Deep Learning, Groovy and
GraalVM</a></li><li><a href='#_deep_learning' class='anchor-link'>Deep
Learning</a></li><li><a href='#_encog' class='anchor-link'>Encog</a></li><li><a
href='#_eclipse_deeplearning4j' class='anchor-link'>Eclipse DeepLe [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Classifying Iris Flowers with Deep Learning, Groovy and
GraalVM</a></li><li><a href='#_deep_learning' class='anchor-link'>Deep
Learning</a></li><li><a href='#_encog' class='anchor-link'>Encog</a></li><li><a
href='#_eclipse_deeplearning4j' class='anchor-link'>Eclipse DeepLe [...]
<div class="sectionbody">
<div class="paragraph">
<p><span class="image right"><img src="img/iris_flowers.png" alt="iris
flowers" width="200"></span>
diff --git a/blog/comparators-and-sorting-in-groovy.html
b/blog/comparators-and-sorting-in-groovy.html
index 6361c3f..48e8d66 100644
--- a/blog/comparators-and-sorting-in-groovy.html
+++ b/blog/comparators-and-sorting-in-groovy.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Comparators and Sorting in Groovy</a></li><li><a
href='#_the_java_comparator_story_recap' class='anchor-link'>The Java
comparator story recap</a></li><li><a href='#_the_groovy_comparator_story'
class='anchor-link'>The Groovy comparator story</a></li><li><a href='#_mixing_i
[...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Comparators and Sorting in Groovy</a></li><li><a
href='#_the_java_comparator_story_recap' class='anchor-link'>The Java
comparator story recap</a></li><li><a href='#_the_groovy_comparator_story'
class='anchor-link'>The Groovy comparator story</a></li><li><a href='#_mixing_i
[...]
<div class="sectionbody">
<div class="paragraph">
<p><span class="image right"><img src="img/cher_record.png" alt="Cher"
width="179" height="179"></span>
diff --git a/blog/deck-of-cards-with-groovy.html
b/blog/deck-of-cards-with-groovy.html
index c259ccd..17ff294 100644
--- a/blog/deck-of-cards-with-groovy.html
+++ b/blog/deck-of-cards-with-groovy.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Deck of cards with Groovy, JDK collections and Eclipse
Collections</a></li></ul><br/><ul class='nav-sidebar'><li style='padding:
0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./deep-learning-and-eclipse-collections'>Deep Learning and E [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Deck of cards with Groovy, JDK collections and Eclipse
Collections</a></li></ul><br/><ul class='nav-sidebar'><li style='padding:
0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./deep-learning-and-eclipse-collections'>Deep Learning and E [...]
<p>Once again, <a href="https://twitter.com/TheDonRaab">Donald Raab</a> has
produced an interesting
<a
href="https://donraab.medium.com/how-to-create-a-deck-of-cards-using-eclipse-collections-d9838ac430b7">blog
post</a> on
<a href="https://github.com/eclipse/eclipse-collections">Eclipse
Collections</a> this one shows some code for modelling and manipulating cards
with Java 17 and Eclipse Collections. His related katas are highly recommended.
diff --git a/blog/deep-learning-and-eclipse-collections.html
b/blog/deep-learning-and-eclipse-collections.html
index 112b342..a7d1f4a 100644
--- a/blog/deep-learning-and-eclipse-collections.html
+++ b/blog/deep-learning-and-eclipse-collections.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Deep Learning and Eclipse Collections</a></li><li><a
href='#_setting_up_our_model_and_data' class='anchor-link'>Setting up our model
and data</a></li><li><a href='#_applying_deep_learning'
class='anchor-link'>Applying deep learning</a></li></ul><br/><ul
class='nav-sidebar' [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Deep Learning and Eclipse Collections</a></li><li><a
href='#_setting_up_our_model_and_data' class='anchor-link'>Setting up our model
and data</a></li><li><a href='#_applying_deep_learning'
class='anchor-link'>Applying deep learning</a></li></ul><br/><ul
class='nav-sidebar' [...]
<div class="sectionbody">
<div class="paragraph">
<p>In previous blogs, we’ve covered
diff --git a/blog/detecting-objects-with-groovy-the.html
b/blog/detecting-objects-with-groovy-the.html
index 8b6a0d6..4ec3791 100644
--- a/blog/detecting-objects-with-groovy-the.html
+++ b/blog/detecting-objects-with-groovy-the.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Detecting objects with Groovy, the Deep Java Library (DJL), and
Apache MXNet</a></li><li><a href='#_deep_learning' class='anchor-link'>Deep
Learning</a></li><li><a href='#_deep_java_library_djl_apache_mxnet'
class='anchor-link'>Deep Java Library (DJL) & Apache MXNet</a [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Detecting objects with Groovy, the Deep Java Library (DJL), and
Apache MXNet</a></li><li><a href='#_deep_learning' class='anchor-link'>Deep
Learning</a></li><li><a href='#_deep_java_library_djl_apache_mxnet'
class='anchor-link'>Deep Java Library (DJL) & Apache MXNet</a [...]
<div class="sectionbody">
<div class="paragraph">
<p>This blog posts looks at using <a href="https://groovy-lang.org/">Apache
Groovy</a> with the
diff --git a/blog/feed.atom b/blog/feed.atom
index 6b7573a..e03525b 100644
--- a/blog/feed.atom
+++ b/blog/feed.atom
@@ -930,25 +930,25 @@
<summary type="html">CodeNarc 1.2 Release Announcement.</summary>
</entry>
<entry>
- <id>http://groovy.apache.org/blog/groovy-2-5-clibuilder-renewal</id>
+ <id>http://groovy.apache.org/blog/groovy-2-5-0-released</id>
<author>
<name>Remko Popma</name>
</author>
- <title type="html">Apache Groovy 2.5 CliBuilder Renewal</title>
- <link href="http://groovy.apache.org/blog/groovy-2-5-clibuilder-renewal"/>
+ <title type="html">Groovy 2.5.0 released</title>
+ <link href="http://groovy.apache.org/blog/groovy-2-5-0-released"/>
<updated>2018-05-30T11:28:31Z</updated>
<published>2018-05-30T11:28:31Z</published>
- <summary type="html">This post looks at new CliBuilder features from
Groovy 2.5 in particular the Picocli-based implementation.</summary>
+ <summary type="html">Groovy 2.5.0 Release Announcement.</summary>
</entry>
<entry>
- <id>http://groovy.apache.org/blog/groovy-2-5-0-released</id>
+ <id>http://groovy.apache.org/blog/groovy-2-5-clibuilder-renewal</id>
<author>
<name>Remko Popma</name>
</author>
- <title type="html">Groovy 2.5.0 released</title>
- <link href="http://groovy.apache.org/blog/groovy-2-5-0-released"/>
+ <title type="html">Apache Groovy 2.5 CliBuilder Renewal</title>
+ <link href="http://groovy.apache.org/blog/groovy-2-5-clibuilder-renewal"/>
<updated>2018-05-30T11:28:31Z</updated>
<published>2018-05-30T11:28:31Z</published>
- <summary type="html">Groovy 2.5.0 Release Announcement.</summary>
+ <summary type="html">This post looks at new CliBuilder features from
Groovy 2.5 in particular the Picocli-based implementation.</summary>
</entry>
</feed>
diff --git a/blog/fruity-eclipse-collections.html
b/blog/fruity-eclipse-collections.html
index e44da3e..c720cd6 100644
--- a/blog/fruity-eclipse-collections.html
+++ b/blog/fruity-eclipse-collections.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Fruity Eclipse Collections</a></li><li><a
href='#_eclipse_collections_fruit_salad' class='anchor-link'>Eclipse
Collections Fruit Salad</a></li><li><a href='#_exploring_emoji_colors'
class='anchor-link'>Exploring emoji colors</a></li><li><a
href='#_putting_it_all_together' [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Fruity Eclipse Collections</a></li><li><a
href='#_eclipse_collections_fruit_salad' class='anchor-link'>Eclipse
Collections Fruit Salad</a></li><li><a href='#_exploring_emoji_colors'
class='anchor-link'>Exploring emoji colors</a></li><li><a
href='#_putting_it_all_together' [...]
<div class="sectionbody">
<div class="paragraph">
<p>This blog post continues on the theme of using fruit emoji from the
diff --git a/blog/gmavenplus-1-6-2-released.html
b/blog/gmavenplus-1-6-2-released.html
index fb33cea..4aa8203 100644
--- a/blog/gmavenplus-1-6-2-released.html
+++ b/blog/gmavenplus-1-6-2-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a
href='#_gmavenplus_1_6_2_has_been_released' class='anchor-link'>GMavenPlus
1.6.2 has been released.</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Rel [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a
href='#_gmavenplus_1_6_2_has_been_released' class='anchor-link'>GMavenPlus
1.6.2 has been released.</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Rel [...]
<h2 id="_gmavenplus_1_6_2_has_been_released">GMavenPlus 1.6.2 has been
released.</h2>
<div class="sectionbody">
<div class="paragraph">
diff --git a/blog/groovy-2-4-16-released.html b/blog/groovy-2-4-16-released.html
index da58f90..449de8b 100644
--- a/blog/groovy-2-4-16-released.html
+++ b/blog/groovy-2-4-16-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.4.16 Released</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released
(Community Artifact)</a></li><li><a hr [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.4.16 Released</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released
(Community Artifact)</a></li><li><a hr [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-2-4-16-windows.html b/blog/groovy-2-4-16-windows.html
index ba9c36b..2e913e3 100644
--- a/blog/groovy-2-4-16-windows.html
+++ b/blog/groovy-2-4-16-windows.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.4.16 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a h [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.4.16 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a h [...]
<p>The Windows installer for Groovy 2.4.16 (community artifact) is available
from:
<a
href="https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.4.16/"
class="bare">https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.4.16/</a></p>
</div></div></div></div></div><footer id='footer'>
diff --git a/blog/groovy-2-4-17-released.html b/blog/groovy-2-4-17-released.html
index 5b400d3..cfed6b2 100644
--- a/blog/groovy-2-4-17-released.html
+++ b/blog/groovy-2-4-17-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.4.17 Released</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released
(Community Artifact)</a></li><li><a hr [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.4.17 Released</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a
href='./groovy-2-4-16-windows'>Groovy 2. [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-2-5-0-released.html b/blog/groovy-2-5-0-released.html
index e49ea82..3e59919 100644
--- a/blog/groovy-2-5-0-released.html
+++ b/blog/groovy-2-5-0-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.0 released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.0 released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7
Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-2-5-1-released.html b/blog/groovy-2-5-1-released.html
index d021d2e..85c5cba 100644
--- a/blog/groovy-2-5-1-released.html
+++ b/blog/groovy-2-5-1-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.1 released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.1 released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7
Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-2-5-2-released.html b/blog/groovy-2-5-2-released.html
index ef09141..616c860 100644
--- a/blog/groovy-2-5-2-released.html
+++ b/blog/groovy-2-5-2-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.2 released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.2 released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-2-5-2-windows.html b/blog/groovy-2-5-2-windows.html
index 87a6694..e61847f 100644
--- a/blog/groovy-2-5-2-windows.html
+++ b/blog/groovy-2-5-2-windows.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.2 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installe [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.2 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (C [...]
<p>The Windows installer for Groovy 2.5.2 (community artifact) is available
from:
<a
href="https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.5.2/"
class="bare">https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.5.2/</a></p>
</div></div></div></div></div><footer id='footer'>
diff --git a/blog/groovy-2-5-3-released.html b/blog/groovy-2-5-3-released.html
index a22d78f..0a9e023 100644
--- a/blog/groovy-2-5-3-released.html
+++ b/blog/groovy-2-5-3-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.3 Released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.3 Released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-2-5-3-windows.html b/blog/groovy-2-5-3-windows.html
index aa3c284..766cae4 100644
--- a/blog/groovy-2-5-3-windows.html
+++ b/blog/groovy-2-5-3-windows.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.3 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (C [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.3 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (C [...]
<p>The Windows installer for Groovy 2.5.3 (community artifact) is available
from:
<a
href="https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.5.3/"
class="bare">https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.5.3/</a></p>
</div></div></div></div></div><footer id='footer'>
diff --git a/blog/groovy-2-5-4-released.html b/blog/groovy-2-5-4-released.html
index 3bf6567..7c80c47 100644
--- a/blog/groovy-2-5-4-released.html
+++ b/blog/groovy-2-5-4-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.4 Released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.4 Released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-2-5-4-windows.html b/blog/groovy-2-5-4-windows.html
index 362bebe..5141fcc 100644
--- a/blog/groovy-2-5-4-windows.html
+++ b/blog/groovy-2-5-4-windows.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.4 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (C [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.4 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (C [...]
<p>The Windows installer for Groovy 2.5.4 (community artifact) is available
from:
<a
href="https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.5.4/"
class="bare">https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.5.4/</a></p>
</div></div></div></div></div><footer id='footer'>
diff --git a/blog/groovy-2-5-5-released.html b/blog/groovy-2-5-5-released.html
index 1c8df0b..3316937 100644
--- a/blog/groovy-2-5-5-released.html
+++ b/blog/groovy-2-5-5-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.5 released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.5 released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-2-5-5-windows.html b/blog/groovy-2-5-5-windows.html
index 5b3e030..a964ef9 100644
--- a/blog/groovy-2-5-5-windows.html
+++ b/blog/groovy-2-5-5-windows.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.5 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (C [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.5 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href [...]
<p>The Windows installer for Groovy 2.5.5 (community artifact) is available at:
<a
href="https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.5.5/"
class="bare">https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.5.5/</a></p>
</div></div></div></div></div><footer id='footer'>
diff --git a/blog/groovy-2-5-6-released.html b/blog/groovy-2-5-6-released.html
index 03a9549..c5fdd58 100644
--- a/blog/groovy-2-5-6-released.html
+++ b/blog/groovy-2-5-6-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.6 Released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.6 Released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7
Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-2-5-7-and.html b/blog/groovy-2-5-7-and.html
index c847ad1..7b68acf 100644
--- a/blog/groovy-2-5-7-and.html
+++ b/blog/groovy-2-5-7-and.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released
(Community Artifacts)</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows In
[...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released
(Community Artifacts)</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released<
[...]
<p>The Windows installer for Groovy 2.5.7 (Community Artifact) is now
available:
<a
href="https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.5.7/"
class="bare">https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-2.5.7/</a></p>
</div>
diff --git a/blog/groovy-2-5-7-released.html b/blog/groovy-2-5-7-released.html
index 16b585c..c87d924 100644
--- a/blog/groovy-2-5-7-released.html
+++ b/blog/groovy-2-5-7-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.7 Released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1
Windows Installers Released (Community Artifacts)</a></ [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 2.5.7 Released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1
Windows Installers Released (Community Artifacts)</a></ [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-2-5-clibuilder-renewal.html
b/blog/groovy-2-5-clibuilder-renewal.html
index 75f1c9e..47ae8b3 100644
--- a/blog/groovy-2-5-clibuilder-renewal.html
+++ b/blog/groovy-2-5-clibuilder-renewal.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a
href='#_the_code_groovy_util_clibuilder_code_class_is_deprecated'
class='anchor-link'>The <code>groovy.util.CliBuilder</code> Class is
Deprecated</a></li><li><a href='#_typed_options' class='anchor-link'>Typed
Options</a> [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a
href='#_the_code_groovy_util_clibuilder_code_class_is_deprecated'
class='anchor-link'>The <code>groovy.util.CliBuilder</code> Class is
Deprecated</a></li><li><a href='#_typed_options' class='anchor-link'>Typed
Options</a> [...]
<div class="sectionbody">
<div class="paragraph">
<p>The <code>CliBuilder</code> class for quickly and concisely building
diff --git a/blog/groovy-3-0-0-alpha.html b/blog/groovy-3-0-0-alpha.html
index 067edd7..4c98115 100644
--- a/blog/groovy-3-0-0-alpha.html
+++ b/blog/groovy-3-0-0-alpha.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 3.0.0-alpha-4 Released</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha1'>Groovy
3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></ [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 3.0.0-alpha-4 Released</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha1'>Groovy
3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></ [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-3-0-0-alpha1.html b/blog/groovy-3-0-0-alpha1.html
index 0c0bd74..a457966 100644
--- a/blog/groovy-3-0-0-alpha1.html
+++ b/blog/groovy-3-0-0-alpha1.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></l [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community
Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></l [...]
<p>The Windows installer for Groovy 3.0.0-alpha-4 (Community Artifact) is
available from the usual place:
<a
href="https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-3.0.0-alpha-4/"
class="bare">https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-3.0.0-alpha-4/</a>
Note this installer doesn’t include Spock since there isn’t a
Spock release compatible with Groovy 3.0.</p>
diff --git a/blog/groovy-3-0-0-beta.html b/blog/groovy-3-0-0-beta.html
index 5804f7f..d22e444 100644
--- a/blog/groovy-3-0-0-beta.html
+++ b/blog/groovy-3-0-0-beta.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 3.0.0-beta-1 Released</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha'>Groovy
3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Gro [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 3.0.0-beta-1 Released</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha'>Groovy
3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Gro [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-3-0-0-beta1.html b/blog/groovy-3-0-0-beta1.html
index cee7c54..03e6f38 100644
--- a/blog/groovy-3-0-0-beta1.html
+++ b/blog/groovy-3-0-0-beta1.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 3.0.0-beta-2 Released</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-beta2'>Groovy
3.0.0-beta-2 Windows Installer Released (Community Release)</a></li>< [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 3.0.0-beta-2 Released</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-beta2'>Groovy
3.0.0-beta-2 Windows Installer Released (Community Release)</a></li>< [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-3-0-0-beta2.html b/blog/groovy-3-0-0-beta2.html
index ea6a08c..0f010de 100644
--- a/blog/groovy-3-0-0-beta2.html
+++ b/blog/groovy-3-0-0-beta2.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 3.0.0-beta-2 Windows Installer Released (Community
Release)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li>< [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 3.0.0-beta-2 Windows Installer Released (Community
Release)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em
0.625em; background-color: #eee'><span>Related posts</span></li><li><a
href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installe [...]
<p>The Windows installer for Groovy 3.0.0-beta-2 is now available:
<a
href="https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-3.0.0-beta-2/"
class="bare">https://groovy.jfrog.io/artifactory/dist-release-local/groovy-windows-installer/groovy-3.0.0-beta-2/</a></p>
</div>
diff --git a/blog/groovy-4-0-3-released.html b/blog/groovy-4-0-3-released.html
index 8367986..93ddfe3 100644
--- a/blog/groovy-4-0-3-released.html
+++ b/blog/groovy-4-0-3-released.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 4.0.3 Released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows
Installer Released (Community Artifact)</a></li><li><a href= [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy 4.0.3 Released</a></li></ul><br/><ul class='nav-sidebar'><li
style='padding: 0.35em 0.625em; background-color: #eee'><span>Related
posts</span></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7
Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-dauphine.html b/blog/groovy-dauphine.html
index 449513a..80c9b95 100644
--- a/blog/groovy-dauphine.html
+++ b/blog/groovy-dauphine.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Processing Results for the Critérium du Dauphiné</a></li><li><a
href='#_results_file' class='anchor-link'>Results file</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a href='./readin [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Processing Results for the Critérium du Dauphiné</a></li><li><a
href='#_results_file' class='anchor-link'>Results file</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a href='./parsin [...]
<div class="sectionbody">
<div class="paragraph">
<p>The 2023 <a href="https://www.criterium-du-dauphine.fr/en/">Critérium du
Dauphiné</a>
diff --git a/blog/groovy-haiku-processing.html
b/blog/groovy-haiku-processing.html
index 20ae25c..6666ead 100644
--- a/blog/groovy-haiku-processing.html
+++ b/blog/groovy-haiku-processing.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy Haiku processing</a></li><li><a
href='#_example_1_finding_the_distinct_letters' class='anchor-link'>Example 1:
Finding the distinct letters</a></li><li><a
href='#_example_2_splitting_letters_into_unique_and_duplicate_partitions'
class='anchor-link'>Example 2: Splitt [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy Haiku processing</a></li><li><a
href='#_example_1_finding_the_distinct_letters' class='anchor-link'>Example 1:
Finding the distinct letters</a></li><li><a
href='#_example_2_splitting_letters_into_unique_and_duplicate_partitions'
class='anchor-link'>Example 2: Splitt [...]
<div class="sectionbody">
<div class="paragraph">
<p>This blog looks at some Groovy solutions for the examples in the
diff --git a/blog/groovy-list-processing-cheat-sheet.html
b/blog/groovy-list-processing-cheat-sheet.html
index f08c2a7..8c85947 100644
--- a/blog/groovy-list-processing-cheat-sheet.html
+++ b/blog/groovy-list-processing-cheat-sheet.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy List Processing Cheat Sheet</a></li><li><a
href='#_declaring_lists' class='anchor-link'>Declaring lists</a></li><li><a
href='#_list_elements_and_properties' class='anchor-link'>List elements and
properties</a></li><li><a href='#_modifying_mutable_lists' class='ancho [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy List Processing Cheat Sheet</a></li><li><a
href='#_declaring_lists' class='anchor-link'>Declaring lists</a></li><li><a
href='#_list_elements_and_properties' class='anchor-link'>List elements and
properties</a></li><li><a href='#_modifying_mutable_lists' class='ancho [...]
<h2 id="_declaring_lists">Declaring lists</h2>
<div class="sectionbody">
<div class="paragraph">
diff --git a/blog/groovy-lucene.html b/blog/groovy-lucene.html
index 7087286..1a1a418 100644
--- a/blog/groovy-lucene.html
+++ b/blog/groovy-lucene.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Searching with Lucene</a></li><li><a
href='#_a_regular_expression_for_project_names' class='anchor-link'>A regular
expression for project names</a></li><li><a
href='#_collecting_project_name_statistics_using_regex_matching'
class='anchor-link'>Collecting project name stati [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Searching with Lucene</a></li><li><a
href='#_a_regular_expression_for_project_names' class='anchor-link'>A regular
expression for project names</a></li><li><a
href='#_collecting_project_name_statistics_using_regex_matching'
class='anchor-link'>Collecting project name stati [...]
<div class="sectionbody">
<div class="paragraph">
<p>The Groovy <a href="https://groovy.apache.org/blog/">blog posts</a> often
reference other Apache projects.
diff --git a/blog/groovy-null-processing.html b/blog/groovy-null-processing.html
index 9be2542..a9fcb0b 100644
--- a/blog/groovy-null-processing.html
+++ b/blog/groovy-null-processing.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy Processing Nulls In Lists</a></li><li><a
href='#_libraries_covered' class='anchor-link'>Libraries covered</a></li><li><a
href='#_mutating_a_list_to_remove_its_nulls' class='anchor-link'>Mutating a
list to remove its nulls</a></li><li><a href='#_producing_a_new_list_ [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy Processing Nulls In Lists</a></li><li><a
href='#_libraries_covered' class='anchor-link'>Libraries covered</a></li><li><a
href='#_mutating_a_list_to_remove_its_nulls' class='anchor-link'>Mutating a
list to remove its nulls</a></li><li><a href='#_producing_a_new_list_ [...]
<div class="sectionbody">
<div class="paragraph">
<p>This <a
href="https://www.programmergirl.com/java-remove-nulls-from-list/">article</a>
by <a href="https://www.programmergirl.com/about-me/">Shubhra Srivastava</a>
diff --git a/blog/groovy-record-performance.html
b/blog/groovy-record-performance.html
index 52d62a3..f80b3b1 100644
--- a/blog/groovy-record-performance.html
+++ b/blog/groovy-record-performance.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy Record Performance</a></li><li><a href='#_our_domain'
class='anchor-link'>Our domain</a></li><li><a href='#_performance_of_hashcode'
class='anchor-link'>Performance of <code>hashCode</code></a></li><li><a
href='#_performance_of_equals' class='anchor-link'>Performanc [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy Record Performance</a></li><li><a href='#_our_domain'
class='anchor-link'>Our domain</a></li><li><a href='#_performance_of_hashcode'
class='anchor-link'>Performance of <code>hashCode</code></a></li><li><a
href='#_performance_of_equals' class='anchor-link'>Performanc [...]
<div class="sectionbody">
<div class="paragraph">
<p>We highly recommend the excellent
diff --git a/blog/groovy-records.html b/blog/groovy-records.html
index 11749da..a6608b0 100644
--- a/blog/groovy-records.html
+++ b/blog/groovy-records.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy Records</a></li><li><a href='#_introduction'
class='anchor-link'>Introduction</a></li><li><a href='#_optional_enhancements'
class='anchor-link'>Optional enhancements</a></li><li><a
href='#_internal_details' class='anchor-link'>Internal details</a></li><li><a
href='# [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy Records</a></li><li><a href='#_introduction'
class='anchor-link'>Introduction</a></li><li><a href='#_optional_enhancements'
class='anchor-link'>Optional enhancements</a></li><li><a
href='#_internal_details' class='anchor-link'>Internal details</a></li><li><a
href='# [...]
<div class="sectionbody">
<div class="paragraph">
<p>A common scenario when programming is the need to group together a bunch
diff --git a/blog/groovy-release-train-4-0.html
b/blog/groovy-release-train-4-0.html
index ee09931..c3212d4 100644
--- a/blog/groovy-release-train-4-0.html
+++ b/blog/groovy-release-train-4-0.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released
(Community Artifact [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a
href='./groovy-2-5-5- [...]
<p>It’s been a productive time for the Apache Groovy project recently.
We recently released versions 4.0.4, 3.0.12 and 2.5.18 with 42, 21 and 15 fixes
and improvements respectively. Two quick highlights for the 4.0.4 release
before getting into more details about the release.</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-sequenced-collections.html
b/blog/groovy-sequenced-collections.html
index 36ff2fa..4b35bf9 100644
--- a/blog/groovy-sequenced-collections.html
+++ b/blog/groovy-sequenced-collections.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy and Sequenced Collections (JEP-431)</a></li><li><a
href='#_sequenced_collections_summary' class='anchor-link'>Sequenced
Collections Summary</a></li><li><a
href='#_accessing_the_first_and_last_element' class='anchor-link'>Accessing the
first and last element</a></li> [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Groovy and Sequenced Collections (JEP-431)</a></li><li><a
href='#_sequenced_collections_summary' class='anchor-link'>Sequenced
Collections Summary</a></li><li><a
href='#_accessing_the_first_and_last_element' class='anchor-link'>Accessing the
first and last element</a></li> [...]
<div class="sectionbody">
<div class="paragraph">
<p>An exciting feature coming in JDK21 is
diff --git a/blog/groovy-text-similarity.html b/blog/groovy-text-similarity.html
index 3486f1a..180b7b7 100644
--- a/blog/groovy-text-similarity.html
+++ b/blog/groovy-text-similarity.html
@@ -94,8 +94,10 @@ and so forth.</p>
</ul>
</div>
<div class="paragraph">
-<p>If you are new to Groovy, consider checking out this
-<a href="https://opensource.com/article/20/12/groovy">Groovy game building
tutorial</a> first.</p>
+<p>So, we’re thinking of a game that is a cross between
+<a href="https://www.nytimes.com/games/wordle/index.html">Wordle</a>,
+<a href="https://en.wikipedia.org/wiki/Mastermind_(board_game)">Master
Mind</a>, and
+<a href="https://semantle.com/">Semantle</a>.</p>
</div>
<div class="paragraph">
<p>Our goals here aren’t to polish a production ready version of the
game, but to:</p>
@@ -119,6 +121,10 @@ and so forth.</p>
</li>
</ul>
</div>
+<div class="paragraph">
+<p>If you are new to Groovy, consider checking out this
+<a href="https://opensource.com/article/20/12/groovy">Groovy game building
tutorial</a> first.</p>
+</div>
</div>
</div>
<div class="sect1">
@@ -233,7 +239,7 @@ in more general ways.</p>
<div class="ulist">
<ul>
<li>
-<p><code>org.deeplearning4j:deeplearning4j-nlp</code> for Glove, ConceptNet,
and FastText models</p>
+<p><code>org.deeplearning4j:deeplearning4j-nlp</code> for GloVe, ConceptNet,
and FastText models</p>
</li>
<li>
<p><code>ai.djl</code> with Pytorch for a universal-sentence-encoder model and
Tensorflow with an Angle model</p>
@@ -850,26 +856,87 @@ hippo|hippopotamus 50% 40% 40%
Related words tend to cluster in similar positions within that space.
Typically rule-based, statistical, or neural-based approaches are used to
perform the embedding
and distance measures like <a
href="https://en.wikipedia.org/wiki/Cosine_similarity">cosine similarity</a>
-are used to find related words (or phrases). We won’t go into further
NLP theory in any great detail,
-but we’ll give some brief explanation as we go.</p>
+are used to find related words (or phrases).
+We won’t go into further NLP theory in any great detail, but we’ll
give some brief
+explanation as we go. We’ll look at several models and split them into
two groups:</p>
</div>
-<div class="paragraph">
-<p>In very rough terms, context independent approaches focus on embeddings that
-are applicable in all contexts. We’ll look at three models which use
this approach.
+<div class="ulist">
+<ul>
+<li>
+<p>Context-independent approaches focus on embeddings that
+are applicable in all contexts (very roughly).
+We’ll look at three models which use this approach.
<a href="https://en.wikipedia.org/wiki/Word2vec">Word2vec</a> by Google
Research,
<a href="https://nlp.stanford.edu/projects/glove/">GloVe</a> by Stanford NLP,
and
<a href="https://fasttext.cc/">FastText</a> by Facebook Research.
-We’ll use <a
href="https://deeplearning4j.konduit.ai/deeplearning4j/reference/word2vec-glove-doc2vec">DeepLearning4J</a>
to load and use these models.</p>
-</div>
-<div class="paragraph">
-<p>Very roughly, context dependent approaches can provide more accurate
matching if the context is
-known, but require more in-depth analysis. We’ll look at two models
which use this approach.
-<a href="https://github.com/SeanLee97/AnglE">Universal AnglE</a>
BERT/LLM-based sentence embeddings
-are used in conjunction with <a href="https://pytorch.org/">PyTorch</a>.
+We’ll use
+<a
href="https://deeplearning4j.konduit.ai/deeplearning4j/reference/word2vec-glove-doc2vec">DeepLearning4J</a>
+to load and use these models.</p>
+</li>
+<li>
+<p>Context-dependent approaches can provide more accurate matching if the
context is
+known, but require more in-depth analysis. For example, if we see "monopoly"
we might think of a company with no competition. If we see "money" we might
think of currency.
+But if we see those two words together, we immediately switch context to board
games.
+We’ll look at two models which use this approach.
+<a href="https://github.com/SeanLee97/AnglE">Universal AnglE</a> is a model
based on BERT/LLM-based
+sentence embeddings and is used in conjunction with <a
href="https://pytorch.org/">PyTorch</a>.
Google’s <a
href="https://www.kaggle.com/models/google/universal-sentence-encoder">Universal
Sentence Encoder</a>
model is trained and optimized for greater-than-word length text, such as
sentences, phrases or short paragraphs, and is used in conjunction with
<a href="https://www.tensorflow.org/">TensorFlow</a>.
-We’ll use the <a href="https://djl.ai/">Deep Java Library</a> to load
and use these models.</p>
+We’ll use the <a href="https://djl.ai/">Deep Java Library</a> to load
and use both of these models.</p>
+</li>
+</ul>
+</div>
+<div class="sect2">
+<h3 id="_glove">GloVe</h3>
+<div class="paragraph">
+<p>The
+<a
href="https://deeplearning4j.konduit.ai/deeplearning4j/reference/word2vec-glove-doc2vec">DeepLearning4J</a>
+library makes it easy to use <a
href="https://nlp.stanford.edu/projects/glove/">GloVe</a> models. The <a
href="https://huggingface.co/fse/glove-wiki-gigaword-300">model we used</a> is
pre-trained on
+2B tweets, 27B tokens, 1.2M vocab, uncased.</p>
+</div>
+<div class="paragraph">
+<p>We simply serialize the model into our word2vec representation,
+and can then call methods like <code>similarity</code> and
<code>wordsNearest</code> as shown here:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="prettyprint highlight"><code data-lang="groovy">var path =
Paths.get(ConceptNet.classLoader.getResource('glove-wiki-gigaword-300.bin').toURI()).toFile()
+Word2Vec model = WordVectorSerializer.readWord2VecModel(path)
+String[] words = ['bull', 'calf', 'bovine', 'cattle', 'livestock', 'horse']
+println """GloVe similarity to cow: ${
+ words
+ .collectEntries { [it, model.similarity('cow', it)] }
+ .sort { -it.value }
+ .collectValues{ sprintf '%4.2f', it }
+}"""
+println "Nearest words in vocab: " + model.wordsNearest('cow', 4)</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Which gives this output:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>GloVe similarity to cow: [bovine:0.67, cattle:0.62, livestock:0.47,
calf:0.44, horse:0.42, bull:0.38]
+Nearest words in vocab: [cows, mad, bovine, cattle]</pre>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_fasttext">FastText</h3>
+<div class="paragraph">
+<p>We can swap to a <a href="https://fasttext.cc/">FastText</a> model. We used
[this model] which has
+1 million word vectors trained on Wikipedia 2017, UMBC webbase corpus and
statmt.org news dataset (16B tokens).</p>
+</div>
+<div class="paragraph">
+<p>It has this output:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>FastText similarity to cow: [bovine:0.72, cattle:0.70, calf:0.67,
bull:0.67, livestock:0.61, horse:0.60]
+Nearest words in vocab: [cows, goat, pig, bovine]</pre>
+</div>
</div>
<div class="paragraph">
<p>Using DJL with PyTorch and the Angle model:</p>
@@ -1161,6 +1228,7 @@ green cat ██████▏ cat ███▏ hi
</div>
</div>
</div>
+</div>
<div class="sect1">
<h2 id="_playing_the_game">Playing the game</h2>
<div class="sectionbody">
@@ -1179,7 +1247,7 @@ Levenshtein Distance: 10, Insert: 0,
Delete: 3, Substitute: 7
Jaccard 0%
JaroWinkler PREFIX 0% / SUFFIX 0%
Phonetic Metaphone=AFTRXK 47% / Soundex=A136 0%
-Meaning Angle 45% / Use 21% / ConceptNet 2% / Glove -4%
/ FastText 19%</pre>
+Meaning Angle 45% / Use 21% / ConceptNet 2% / GloVe -4%
/ FastText 19%</pre>
</div>
</div>
<div class="paragraph">
@@ -1219,7 +1287,7 @@ Levenshtein Distance: 6, Insert: 2,
Delete: 0, Substitute: 4
Jaccard 22%
JaroWinkler PREFIX 56% / SUFFIX 45%
Phonetic Metaphone=FRT 39% / Soundex=F630 0%
-Meaning Angle 64% / Use 41% / ConceptNet 37% / Glove
31% / FastText 44%</pre>
+Meaning Angle 64% / Use 41% / ConceptNet 37% / GloVe
31% / FastText 44%</pre>
</div>
</div>
<div class="paragraph">
@@ -1259,7 +1327,7 @@ Levenshtein Distance: 1, Insert: 0,
Delete: 0, Substitute: 1
Jaccard 71% (5/7)
JaroWinkler PREFIX 90% / SUFFIX 96%
Phonetic Metaphone=BTNK 79% / Soundex=B352 75%
-Meaning Angle 52% / Use 35% / ConceptNet 2% / Glove 4%
/ FastText 25%</pre>
+Meaning Angle 52% / Use 35% / ConceptNet 2% / GloVe 4%
/ FastText 25%</pre>
</div>
</div>
<div class="paragraph">
@@ -1277,7 +1345,7 @@ Levenshtein Distance: 0, Insert: 0,
Delete: 0, Substitute: 0
Jaccard 100% (6/6)
JaroWinkler PREFIX 100% / SUFFIX 100%
Phonetic Metaphone=PTNK 100% / Soundex=P352 100%
-Meaning Angle 100% / Use 100% / ConceptNet 100% / Glove
100% / FastText 100%
+Meaning Angle 100% / Use 100% / ConceptNet 100% / GloVe
100% / FastText 100%
Congratulations, you guessed correctly!</pre>
</div>
@@ -1294,7 +1362,7 @@ Levenshtein Distance: 7, Insert: 4,
Delete: 0, Substitute: 3
Jaccard 22% (2/9) 2 / 9
JaroWinkler PREFIX 42% / SUFFIX 46%
Phonetic Metaphone=BL 38% / Soundex=B400 25%
-Meaning Angle 46% / Use 40% / ConceptNet 0% / Glove 0%
/ FastText 31%
+Meaning Angle 46% / Use 40% / ConceptNet 0% / GloVe 0%
/ FastText 31%
Possible letters: a b c d e f g h i j k l m n o p q r s t u v w x y z
Guess the hidden word (turn 2): leg
@@ -1303,7 +1371,7 @@ Levenshtein Distance: 6, Insert: 5,
Delete: 0, Substitute: 1
Jaccard 25% (2/8) 1 / 4
JaroWinkler PREFIX 47% / SUFFIX 0%
Phonetic Metaphone=LK 38% / Soundex=L200 0%
-Meaning Angle 50% / Use 18% / ConceptNet 11% / Glove
13% / FastText 37%
+Meaning Angle 50% / Use 18% / ConceptNet 11% / GloVe
13% / FastText 37%
Possible letters: a b c d e f g h i j k l m n o p q r s t u v w x y z
Guess the hidden word (turn 3): languish
@@ -1312,7 +1380,7 @@ Levenshtein Distance: 8, Insert: 0,
Delete: 0, Substitute: 8
Jaccard 15% (2/13) 2 / 13
JaroWinkler PREFIX 50% / SUFFIX 50%
Phonetic Metaphone=LNKX 34% / Soundex=L522 0%
-Meaning Angle 46% / Use 12% / ConceptNet -11% / Glove
-4% / FastText 25%
+Meaning Angle 46% / Use 12% / ConceptNet -11% / GloVe
-4% / FastText 25%
Possible letters: a b c d e f g h i j k l m n o p q r s t u v w x y z
Guess the hidden word (turn 4): election
@@ -1321,7 +1389,7 @@ Levenshtein Distance: 4, Insert: 0,
Delete: 0, Substitute: 4
Jaccard 40% (4/10) 2 / 5
JaroWinkler PREFIX 83% / SUFFIX 75%
Phonetic Metaphone=ELKXN 50% / Soundex=E423 75%
-Meaning Angle 47% / Use 13% / ConceptNet -5% / Glove
-7% / FastText 26%
+Meaning Angle 47% / Use 13% / ConceptNet -5% / GloVe
-7% / FastText 26%
Possible letters: a b c d e f g h i j k l m n o p q r s t u v w x y z
Guess the hidden word (turn 5): elevator
@@ -1330,7 +1398,7 @@ Levenshtein Distance: 0, Insert: 0,
Delete: 0, Substitute: 0
Jaccard 100% (7/7) 1
JaroWinkler PREFIX 100% / SUFFIX 100%
Phonetic Metaphone=ELFTR 100% / Soundex=E413 100%
-Meaning Angle 100% / Use 100% / ConceptNet 100% / Glove
100% / FastText 100%
+Meaning Angle 100% / Use 100% / ConceptNet 100% / GloVe
100% / FastText 100%
Congratulations, you guessed correctly!</pre>
</div>
@@ -1350,7 +1418,7 @@ Levenshtein Distance: 8, Insert: 1,
Delete: 3, Substitute: 4
Jaccard 33%
JaroWinkler PREFIX 56% / SUFFIX 56%
Phonetic Metaphone=AFTRXK 32% / Soundex=A136 25%
-Meaning Angle 41% / Use 20% / ConceptNet -4% / Glove
-13% / FastText 11%</pre>
+Meaning Angle 41% / Use 20% / ConceptNet -4% / GloVe
-13% / FastText 11%</pre>
</div>
</div>
<div class="paragraph">
@@ -1391,7 +1459,7 @@ Levenshtein Distance: 7, Insert: 0,
Delete: 0, Substitute: 7
Jaccard 20% (2/10) 1 / 5
JaroWinkler PREFIX 47% / SUFFIX 47%
Phonetic Metaphone=PTRT 38% / Soundex=P363 0%
-Meaning Angle 39% / Use 23% / ConceptNet 13% / Glove 0%
/ FastText 27%
+Meaning Angle 39% / Use 23% / ConceptNet 13% / GloVe 0%
/ FastText 27%
Possible letters: a b c d e f g h i j k l m n o p q r s t u v w x y z
Guess the hidden word (turn 3): tarragon
@@ -1400,7 +1468,7 @@ Levenshtein Distance: 5, Insert: 0,
Delete: 0, Substitute: 5
Jaccard 71% (5/7) 5 / 7
JaroWinkler PREFIX 68% / SUFFIX 68%
Phonetic Metaphone=TRKN 50% / Soundex=T625 25%
-Meaning Angle 46% / Use 4% / ConceptNet -7% / Glove 5%
/ FastText 26%
+Meaning Angle 46% / Use 4% / ConceptNet -7% / GloVe 5%
/ FastText 26%
Possible letters: a b c d e f g h i j k l m n o p q r s t u v w x y z
Guess the hidden word (turn 4): kangaroo
@@ -1409,7 +1477,7 @@ Levenshtein Distance: 0, Insert: 0,
Delete: 0, Substitute: 0
Jaccard 100% (6/6) 1
JaroWinkler PREFIX 100% / SUFFIX 100%
Phonetic Metaphone=KNKR 100% / Soundex=K526 100%
-Meaning Angle 100% / Use 100% / ConceptNet 100% / Glove
100% / FastText 100%
+Meaning Angle 100% / Use 100% / ConceptNet 100% / GloVe
100% / FastText 100%
Congratulations, you guessed correctly!</pre>
</div>
@@ -1426,7 +1494,7 @@ Levenshtein Distance: 8, Insert: 0,
Delete: 4, Substitute: 4
Jaccard 50%
JaroWinkler PREFIX 61% / SUFFIX 49%
Phonetic Metaphone=AFTRXK 33% / Soundex=A136 25%
-Meaning Angle 44% / Use 11% / ConceptNet -7% / Glove 1%
/ FastText 15%</pre>
+Meaning Angle 44% / Use 11% / ConceptNet -7% / GloVe 1%
/ FastText 15%</pre>
</div>
</div>
<div class="paragraph">
@@ -1460,7 +1528,7 @@ Levenshtein Distance: 4, Insert: 0,
Delete: 0, Substitute: 4
Jaccard 57% (4/7) 4 / 7
JaroWinkler PREFIX 67% / SUFFIX 67%
Phonetic Metaphone=KRS 74% / Soundex=C620 75%
-Meaning Angle 51% / Use 12% / ConceptNet 5% / Glove 23%
/ FastText 26%</pre>
+Meaning Angle 51% / Use 12% / ConceptNet 5% / GloVe 23%
/ FastText 26%</pre>
</div>
</div>
<div class="paragraph">
@@ -1491,7 +1559,7 @@ Levenshtein Distance: 6, Insert: 0,
Delete: 0, Substitute: 6
Jaccard 67% (4/6) 2 / 3
JaroWinkler PREFIX 56% / SUFFIX 56%
Phonetic Metaphone=RSTS 61% / Soundex=R232 25%
-Meaning Angle 54% / Use 25% / ConceptNet 18% / Glove
18% / FastText 31%</pre>
+Meaning Angle 54% / Use 25% / ConceptNet 18% / GloVe
18% / FastText 31%</pre>
</div>
</div>
<div class="paragraph">
@@ -1521,7 +1589,7 @@ Levenshtein Distance: 0, Insert: 0,
Delete: 0, Substitute: 0
Jaccard 100% (5/5) 1
JaroWinkler PREFIX 100% / SUFFIX 100%
Phonetic Metaphone=KRT 100% / Soundex=C630 100%
-Meaning Angle 100% / Use 100% / ConceptNet 100% / Glove
100% / FastText 100%
+Meaning Angle 100% / Use 100% / ConceptNet 100% / GloVe
100% / FastText 100%
Congratulations, you guessed correctly!</pre>
</div>
@@ -1538,7 +1606,7 @@ Levenshtein Distance: 6, Insert: 3,
Delete: 1, Substitute: 2
Jaccard 33% (3/9)
JaroWinkler PREFIX 72% / SUFFIX 72%
Phonetic Metaphone=SLR 46% / Soundex=C460 25%
-Meaning Angle 44% / Use 20% / ConceptNet -7% / Glove 1%
/ FastText 33%
+Meaning Angle 44% / Use 20% / ConceptNet -7% / GloVe 1%
/ FastText 33%
Possible letters: a b c d e f g h i j k l m n o p q r s t u v w x y z
Guess the hidden word (turn 2): explorer
@@ -1547,7 +1615,7 @@ Levenshtein Distance: 6, Insert: 0,
Delete: 0, Substitute: 6
Jaccard 44% (4/9)
JaroWinkler PREFIX 67% / SUFFIX 58%
Phonetic Metaphone=EKSPLRR 50% / Soundex=E214 50%
-Meaning Angle 50% / Use 14% / ConceptNet 1% / Glove 9%
/ FastText 29%
+Meaning Angle 50% / Use 14% / ConceptNet 1% / GloVe 9%
/ FastText 29%
Possible letters: a b c d e f g h i j k l m n o p q r s t u v w x y z
Guess the hidden word (turn 3): elevator
@@ -1556,7 +1624,7 @@ Levenshtein Distance: 0, Insert: 0,
Delete: 0, Substitute: 0
Jaccard 100% (7/7)
JaroWinkler PREFIX 100% / SUFFIX 100%
Phonetic Metaphone=ELFTR 100% / Soundex=E413 100%
-Meaning Angle 100% / Use 100% / ConceptNet 100% / Glove
100% / FastText 100%
+Meaning Angle 100% / Use 100% / ConceptNet 100% / GloVe
100% / FastText 100%
Congratulations, you guessed correctly!</pre>
</div>
diff --git a/blog/helloworldemoji.html b/blog/helloworldemoji.html
index 4769b3f..9039ea6 100644
--- a/blog/helloworldemoji.html
+++ b/blog/helloworldemoji.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Hello World with Emojis</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse
Collections</a></li><li><a href='./z [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Hello World with Emojis</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a
href='./deep-learning-and-eclips [...]
<p>In a <a
href="https://groovy.apache.org/blog/jvm-hello-world-with-groovy">previous blog
post</a>
we took an in-depth look at how to write a "hello world" class at the bytecode
level
using various libraries.</p>
diff --git a/blog/index.html b/blog/index.html
index 4dd890f..7157f79 100644
--- a/blog/index.html
+++ b/blog/index.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3' id='blog-index'><ul
class='nav-sidebar list'><li class='active'><a
href='/blog/'>Blogs</a></li><li><a href='groovy-lucene'>Searching with
Lucene</a></li><li><a href='groovy-graph-databases'>Using Graph Databases with
Groovy</a></li><li><a
href='solving-simple-optimization-problems-with-groovy'>Solving simple
optimization problems with Groovy using Commons Math, Hip [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3' id='blog-index'><ul
class='nav-sidebar list'><li class='active'><a
href='/blog/'>Blogs</a></li><li><a href='groovy-lucene'>Searching with
Lucene</a></li><li><a href='groovy-graph-databases'>Using Graph Databases with
Groovy</a></li><li><a
href='solving-simple-optimization-problems-with-groovy'>Solving simple
optimization problems with Groovy using Commons Math, Hip [...]
<div class='row'>
<div class='colset-3-footer'>
<div class='col-1'>
@@ -97,7 +97,7 @@
colors: am5.ColorSet.new(root, {})
}));
wc.data.setAll([
- { category: "centroids", value: 1 }, { category: "data
science", value: 7 }, { category: "groovy", value: 81 }, { category: "kmeans",
value: 3 }, { category: "records", value: 7 }, { category: "apache spark",
value: 1 }, { category: "apache wayang", value: 1 }, { category: "release",
value: 25 }, { category: "clibuilder", value: 1 }, { category: "picocli",
value: 1 }, { category: "commons cli", value: 1 }, { category: "asf", value: 2
}, { category: "apachecon", value: 3 } [...]
+ { category: "concurrency", value: 2 }, { category: "groovy",
value: 81 }, { category: "actors", value: 2 }, { category: "pekko", value: 1 },
{ category: "gpars", value: 2 }, { category: "calendar", value: 1 }, {
category: "date", value: 3 }, { category: "jsr310", value: 1 }, { category:
"time", value: 1 }, { category: "data science", value: 7 }, { category:
"eclipse collections", value: 9 }, { category: "kmeans", value: 3 }, {
category: "emoji", value: 8 }, { category: "v [...]
]);
wc.labels.template.setAll({
paddingTop: 5,
diff --git a/blog/lego-bricks-with-groovy.html
b/blog/lego-bricks-with-groovy.html
index 2ea3153..e24c534 100644
--- a/blog/lego-bricks-with-groovy.html
+++ b/blog/lego-bricks-with-groovy.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Lego Bricks with Groovy</a></li><li><a
href='#_basic_collection_processing' class='anchor-link'>Basic Collection
Processing</a></li><li><a href='#_our_example_domain' class='anchor-link'>Our
example domain</a></li><li><a href='#_some_bricks_to_play_with'
class='anchor-link [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Lego Bricks with Groovy</a></li><li><a
href='#_basic_collection_processing' class='anchor-link'>Basic Collection
Processing</a></li><li><a href='#_our_example_domain' class='anchor-link'>Our
example domain</a></li><li><a href='#_some_bricks_to_play_with'
class='anchor-link [...]
<div class="sectionbody">
<div class="paragraph">
<p><a href="https://twitter.com/TheDonRaab">Donald Raab</a> has continued has
interesting
diff --git a/blog/matrix-calculations-with-groovy-apache.html
b/blog/matrix-calculations-with-groovy-apache.html
index 87f1689..36b1190 100644
--- a/blog/matrix-calculations-with-groovy-apache.html
+++ b/blog/matrix-calculations-with-groovy-apache.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j
and EJML</a></li><li><a href='#_fibonacci'
class='anchor-link'>Fibonacci</a></li><li><a href='#_leslie_matrices'
class='anchor-link'>Leslie Matrices</a></li><li><a
href='#_encryption_with_matrices' class='a [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j
and EJML</a></li><li><a href='#_fibonacci'
class='anchor-link'>Fibonacci</a></li><li><a href='#_leslie_matrices'
class='anchor-link'>Leslie Matrices</a></li><li><a
href='#_encryption_with_matrices' class='a [...]
<div class="sectionbody">
<div class="paragraph">
<p>This blogs looks at performing matrix calculations with Groovy
diff --git a/blog/parsing-json-with-groovy.html
b/blog/parsing-json-with-groovy.html
index 9b16a4f..818005c 100644
--- a/blog/parsing-json-with-groovy.html
+++ b/blog/parsing-json-with-groovy.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Parsing JSON with Groovy</a></li><li><a
href='#_batteries_included_experience' class='anchor-link'>Batteries included
experience</a></li><li><a href='#_gradle'
class='anchor-link'>Gradle</a></li><li><a href='#_maven'
class='anchor-link'>Maven</a></li><li><a href='#_advance [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Parsing JSON with Groovy</a></li><li><a
href='#_batteries_included_experience' class='anchor-link'>Batteries included
experience</a></li><li><a href='#_gradle'
class='anchor-link'>Gradle</a></li><li><a href='#_maven'
class='anchor-link'>Maven</a></li><li><a href='#_advance [...]
<div class="sectionbody">
<div class="paragraph">
<p><span class="image right"><img src="img/json_logo.gif" alt="json logo"
width="120"></span>
diff --git a/blog/reading-and-writing-csv-files.html
b/blog/reading-and-writing-csv-files.html
index f7c4865..7e0cc5c 100644
--- a/blog/reading-and-writing-csv-files.html
+++ b/blog/reading-and-writing-csv-files.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Reading and Writing CSV files with Groovy</a></li><li><a
href='#_introduction' class='anchor-link'>Introduction</a></li><li><a
href='#_commons_csv' class='anchor-link'>Commons CSV</a></li><li><a
href='#_opencsv' class='anchor-link'>OpenCSV</a></li><li><a href='#_jackson_da
[...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Reading and Writing CSV files with Groovy</a></li><li><a
href='#_introduction' class='anchor-link'>Introduction</a></li><li><a
href='#_commons_csv' class='anchor-link'>Commons CSV</a></li><li><a
href='#_opencsv' class='anchor-link'>OpenCSV</a></li><li><a href='#_jackson_da
[...]
<h2 id="_introduction">Introduction</h2>
<div class="sectionbody">
<div class="paragraph">
diff --git a/blog/seasons-greetings-emoji.html
b/blog/seasons-greetings-emoji.html
index 0698b4a..fed8b45 100644
--- a/blog/seasons-greetings-emoji.html
+++ b/blog/seasons-greetings-emoji.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Season’s Greetings with Emojis</a></li><li><a
href='#_jdk_21_new_features' class='anchor-link'>JDK 21 New
Features</a></li><li><a href='#_playing_with_emojis_with_groovy'
class='anchor-link'>Playing with Emojis with Groovy</a></li><li><a
href='#_more_information' cla [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Season’s Greetings with Emojis</a></li><li><a
href='#_jdk_21_new_features' class='anchor-link'>JDK 21 New
Features</a></li><li><a href='#_playing_with_emojis_with_groovy'
class='anchor-link'>Playing with Emojis with Groovy</a></li><li><a
href='#_more_information' cla [...]
<div class="sectionbody">
<div class="paragraph">
<p>In a <a href="https://groovy.apache.org/blog/helloworldemoji">previous blog
post</a>
diff --git a/blog/set-operations-with-groovy.html
b/blog/set-operations-with-groovy.html
index f0262bb..3716eb7 100644
--- a/blog/set-operations-with-groovy.html
+++ b/blog/set-operations-with-groovy.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Set Operators with Groovy</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse
Collections</a></li><li><a href='. [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Set Operators with Groovy</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse
Collections</a></li><li><a href='. [...]
<p><a href="https://twitter.com/TheDonRaab">Donald Raab</a> posted <a
href="https://donraab.medium.com/comparing-set-operations-between-java-and-eclipse-collections-92cf1df28d3b">an
article</a> about set operators using Java collections and <a
href="https://github.com/eclipse/eclipse-collections">Eclipse Collections</a>.
<a
href="https://donraab.medium.com/comparing-set-operations-between-java-and-eclipse-collections-92cf1df28d3b">That
post</a> focuses
on the <em>union</em>, <em>intersection</em> and <em>difference</em>
operators. We’ll add in
<em>symmetric difference</em> since Groovy supports operator overloading for
that
diff --git a/blog/using-groovy-with-apache-wayang.html
b/blog/using-groovy-with-apache-wayang.html
index e7e4425..b5b9df3 100644
--- a/blog/using-groovy-with-apache-wayang.html
+++ b/blog/using-groovy-with-apache-wayang.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a
href='#_whiskey_clustering' class='anchor-link'>Whiskey
Clustering</a></li><li><a href='#_implementation_details'
class='anchor-link'>Implementation Details</a></li><li><a
href='#_running_with_the_java_streams [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a
href='#_whiskey_clustering' class='anchor-link'>Whiskey
Clustering</a></li><li><a href='#_implementation_details'
class='anchor-link'>Implementation Details</a></li><li><a
href='#_running_with_the_java_streams [...]
<div class="sectionbody">
<div class="paragraph">
<p><span class="image right"><img
src="https://www.apache.org/logos/res/wayang/default.png" alt="wayang logo"
width="100"></span>
diff --git a/blog/whiskey-clustering-with-groovy-and.html
b/blog/whiskey-clustering-with-groovy-and.html
index 5ada9ee..72fc87e 100644
--- a/blog/whiskey-clustering-with-groovy-and.html
+++ b/blog/whiskey-clustering-with-groovy-and.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a
href='#_whiskey_clustering' class='anchor-link'>Whiskey
Clustering</a></li><li><a href='#_apache_ignite' class='anchor-link'>Apache
Ignite</a></li><li><a href='#_implementation_details' class='anchor-link'>Imp
[...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a
href='#_whiskey_clustering' class='anchor-link'>Whiskey
Clustering</a></li><li><a href='#_apache_ignite' class='anchor-link'>Apache
Ignite</a></li><li><a href='#_implementation_details' class='anchor-link'>Imp
[...]
<div class="sectionbody">
<div class="paragraph">
<p>In a previous <a
href="https://groovy.apache.org/blog/using-groovy-with-apache-wayang">blog
post</a>,
diff --git a/blog/wordle-checker.html b/blog/wordle-checker.html
index 0fced43..55325d4 100644
--- a/blog/wordle-checker.html
+++ b/blog/wordle-checker.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Checking Wordle with Groovy</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a
href='./zipping-collectio [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Checking Wordle with Groovy</a></li></ul><br/><ul
class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color:
#eee'><span>Related posts</span></li><li><a
href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a
href='./groovy-list-proce [...]
<p>This <a
href="https://donraab.medium.com/comparing-my-smalltalk-and-eclipse-collections-wordle-kata-solutions-4058ac7d8ca0">article</a>
by <a href="https://twitter.com/TheDonRaab">Donald Raab</a>
looks at writing a Wordle checker in Smalltalk and Java using <a
href="https://github.com/eclipse/eclipse-collections">Eclipse Collections</a>.
Let’s look at doing the same in Groovy.
We could easily use Eclipse Collections with Groovy
diff --git a/blog/zipping-collections-with-groovy.html
b/blog/zipping-collections-with-groovy.html
index 3d0a080..ffc171b 100644
--- a/blog/zipping-collections-with-groovy.html
+++ b/blog/zipping-collections-with-groovy.html
@@ -53,7 +53,7 @@
</ul>
</div>
</div>
- </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Zipping Collections with Groovy</a></li><li><a
href='#_what_is_zipping' class='anchor-link'>What is zipping?</a></li><li><a
href='#_groovy' class='anchor-link'>Groovy</a></li><li><a
href='#_eclipse_collections' class='anchor-link'>Eclipse
Collections</a></li><li><a href='# [...]
+ </div><div id='content' class='page-1'><div
class='row'><div class='row-fluid'><div class='col-lg-3'><ul
class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a
href='#doc'>Zipping Collections with Groovy</a></li><li><a
href='#_what_is_zipping' class='anchor-link'>What is zipping?</a></li><li><a
href='#_groovy' class='anchor-link'>Groovy</a></li><li><a
href='#_eclipse_collections' class='anchor-link'>Eclipse
Collections</a></li><li><a href='# [...]
<h2 id="_what_is_zipping">What is zipping?</h2>
<div class="sectionbody">
<div class="paragraph">