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 25be255 2025/02/08 12:06:28: Generated dev website from
groovy-website@3218c3d
25be255 is described below
commit 25be255866dd955afac1ed8344f8522ffbab5d65
Author: jenkins <[email protected]>
AuthorDate: Sat Feb 8 12:06:28 2025 +0000
2025/02/08 12:06:28: Generated dev website from groovy-website@3218c3d
---
blog/adventures-with-groovyfx.html | 2 +-
blog/apache-groovy-2022-year-in.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/fun-with-obfuscated-groovy.html | 2 +-
blog/gmavenplus-1-6-2-released.html | 2 +-
blog/gpars-meets-virtual-threads.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 | 358 ++++++++++++++++++++++-
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/working-with-sql-databases-with.html | 2 +-
blog/zipping-collections-with-groovy.html | 2 +-
58 files changed, 422 insertions(+), 66 deletions(-)
diff --git a/blog/adventures-with-groovyfx.html
b/blog/adventures-with-groovyfx.html
index 60c4383..eb0be8d 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='./helloworldemoji' [...]
+ </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 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/apache-groovy-2022-year-in.html
b/blog/apache-groovy-2022-year-in.html
index 74e6f9d..fb1d5c3 100644
--- a/blog/apache-groovy-2022-year-in.html
+++ b/blog/apache-groovy-2022-year-in.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 2022 Year In Review</a></li><li><a
href='#_releases_contributions' class='anchor-link'>Releases &
Contributions</a></li><li><a href='#_downloads'
class='anchor-link'>Downloads</a></li><li><a href='#_blogs'
class='anchor-link'>Blogs</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'>Apache Groovy 2022 Year In Review</a></li><li><a
href='#_releases_contributions' class='anchor-link'>Releases &
Contributions</a></li><li><a href='#_downloads'
class='anchor-link'>Downloads</a></li><li><a href='#_blogs'
class='anchor-link'>Blogs</a></li><li><a href='#_ [...]
<div class="sectionbody">
<div class="paragraph">
<p>The year 2022 has been a reasonably good one for the Groovy Programming
Language.
diff --git a/blog/classifying-iris-flowers-with-deep.html
b/blog/classifying-iris-flowers-with-deep.html
index 100f7d7..01adfea 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 f40a4b9..6361c3f 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 f41e437..c259ccd 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 84c10c6..112b342 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 f911040..8b6a0d6 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 e03525b..6b7573a 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-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>
<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>
</feed>
diff --git a/blog/fruity-eclipse-collections.html
b/blog/fruity-eclipse-collections.html
index 82d5ef3..e44da3e 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/fun-with-obfuscated-groovy.html
b/blog/fun-with-obfuscated-groovy.html
index 385468d..e428b4d 100644
--- a/blog/fun-with-obfuscated-groovy.html
+++ b/blog/fun-with-obfuscated-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'>Fun with obfuscated 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-record-performance'>Groovy Record Performance</a></li><li><a
href='./matrix-calculations-wi [...]
+ </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'>Fun with obfuscated 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='./matrix-calculations-with-groovy-apache'>Matrix calculations with
Groovy, Apache Commons Math, ojAl [...]
<p>An interesting tweet appeared in my feed this morning:</p>
</div>
<div class="paragraph">
diff --git a/blog/gmavenplus-1-6-2-released.html
b/blog/gmavenplus-1-6-2-released.html
index bd2a9a9..fb33cea 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/gpars-meets-virtual-threads.html
b/blog/gpars-meets-virtual-threads.html
index 696728f..53fb904 100644
--- a/blog/gpars-meets-virtual-threads.html
+++ b/blog/gpars-meets-virtual-threads.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'>GPars meets Virtual Threads</a></li><li><a
href='#_parallel_collections' class='anchor-link'>Parallel
Collections</a></li><li><a href='#_agents'
class='anchor-link'>Agents</a></li><li><a href='#_actors'
class='anchor-link'>Actors</a></li><li><a href='#_dataflow' class='anc [...]
+ </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'>GPars meets Virtual Threads</a></li><li><a
href='#_parallel_collections' class='anchor-link'>Parallel
Collections</a></li><li><a href='#_agents'
class='anchor-link'>Agents</a></li><li><a href='#_actors'
class='anchor-link'>Actors</a></li><li><a href='#_dataflow' class='anc [...]
<div class="sectionbody">
<div class="paragraph">
<p><span class="image right"><img src="img/gpars_logo.png" alt="gpars"
width="150"></span>
diff --git a/blog/groovy-2-4-16-released.html b/blog/groovy-2-4-16-released.html
index 5001096..da58f90 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 af9f94d..ba9c36b 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 5438620..5b400d3 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-released'>Groovy 2.4.16 Released</a></li><li><a
href='./groovy-2-4-16-windows'>Groovy 2. [...]
+ </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 [...]
<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 ab1e2ee..e49ea82 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-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.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= [...]
<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 97d4418..d021d2e 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-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.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= [...]
<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 b77bc07..ef09141 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 61d4397..87a6694 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-4-windows'>Groovy 2.5.4 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.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 [...]
<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 574a009..a22d78f 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 dee4030..aa3c284 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-4-windows'>Groovy 2.5.4 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-2-windows'>Groovy 2.5.2 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 2f8741d..3bf6567 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 cb0f26b..362bebe 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-5-windows'>Groovy 2.5.5 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-2-windows'>Groovy 2.5.2 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 ed71765..1c8df0b 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 bce235a..5b3e030 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-4-windows'>Groovy 2.5.4 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-2-windows'>Groovy 2.5.2 Windows Installer Released (C [...]
<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 d07ab57..03a9549 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-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.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= [...]
<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 a8c0d72..c847ad1 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-4-windows'>Groovy 2.5.4 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-2-windows'>Groovy 2.5.2 Windows In
[...]
<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 7030ba5..16b585c 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 2151bc2..75f1c9e 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 0dcb4d2..067edd7 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 d8323c2..0c0bd74 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 33ca05a..5804f7f 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-beta2'>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-beta1'>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 12ed510..cee7c54 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 a1abad4..ea6a08c 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-beta1'>Groovy 3.0.0-beta-2 Released</a></li>< [...]
<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 2e7b2d2..8367986 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-3-0-0-alpha'>Groovy 3.0.0-alpha-4
Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2 [...]
+ </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= [...]
<p>Dear community,</p>
</div>
<div class="paragraph">
diff --git a/blog/groovy-dauphine.html b/blog/groovy-dauphine.html
index 53ee341..449513a 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='./readin [...]
<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 119bf95..20ae25c 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 07457e7..f08c2a7 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 dc8e674..7087286 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 f7862c0..9be2542 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 68ed161..52d62a3 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 067c2cc..11749da 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 09d92bc..ee09931 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-3-0-0-alpha'>Groovy
3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2 [...]
+ </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 [...]
<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 ae66c23..36ff2fa 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 c2703fc..1201c1f 100644
--- a/blog/groovy-text-similarity.html
+++ b/blog/groovy-text-similarity.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 Text Similarity</a></li><li><a href='#_introduction'
class='anchor-link'>Introduction</a></li><li><a href='#_background'
class='anchor-link'>Background</a></li><li><a href='#_simple_string_metrics'
class='anchor-link'>Simple String Metrics</a></li><li><a href='#_pho [...]
+ </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 Text Similarity</a></li><li><a href='#_introduction'
class='anchor-link'>Introduction</a></li><li><a href='#_background'
class='anchor-link'>Background</a></li><li><a href='#_simple_string_metrics'
class='anchor-link'>Simple String Metrics</a></li><li><a href='#_pho [...]
<a href="https://github.com/paulk-asert/" target="_blank" rel="noopener
noreferrer"><img style="border-radius:50%;height:48px;width:auto"
src="https://github.com/paulk-asert.png" alt="Paul King"></a>
<div style="display:grid;align-items:center;margin:0.1ex;padding:0ex">
<div><a href="https://github.com/paulk-asert/" target="_blank" rel="noopener
noreferrer"><span>Paul King</span></a></div>
@@ -1113,6 +1113,362 @@ green cat ██████▏ cat ███▏
hi
</div>
</div>
<div class="sect1">
+<h2 id="_playing_the_game">Playing the game</h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_round_1">Round 1</h3>
+<div class="listingblock">
+<div class="content">
+<pre>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 1): aftershock
+LongestCommonSubsequence 0
+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%
+
+Possible letters: b d g i j l m n p q u v w x y z
+Guess the hidden word (turn 2): fruit
+LongestCommonSubsequence 2
+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%
+
+Possible letters: b d g i j l m n p q u v w x y z
+Guess the hidden word (turn 3): buzzing
+LongestCommonSubsequence 4
+Levenshtein Distance: 3, Insert: 0, Delete: 0, Substitute: 3
+Jaccard 50%
+JaroWinkler PREFIX 71% / SUFFIX 80%
+Phonetic Metaphone=BSNK 58% / Soundex=B252 50%
+Meaning Angle 44% / Use 19% / ConceptNet -9% / Glove
-2% / FastText 24%
+
+Possible letters: b d g i j l m n p q u v w x y z
+Guess the hidden word (turn 4): pulling
+LongestCommonSubsequence 5
+Levenshtein Distance: 2, Insert: 0, Delete: 0, Substitute: 2
+Jaccard 71%
+JaroWinkler PREFIX 85% / SUFFIX 87%
+Phonetic Metaphone=PLNK 80% / Soundex=P452 75%
+Meaning Angle 48% / Use 25% / ConceptNet -8% / Glove 3%
/ FastText 29%
+
+Possible letters: b d g i j l m n p q u v w x y z
+Guess the hidden word (turn 5): pudding
+LongestCommonSubsequence 7
+Levenshtein Distance: 0, Insert: 0, Delete: 0, Substitute: 0
+Jaccard 100%
+JaroWinkler PREFIX 100% / SUFFIX 100%
+Phonetic Metaphone=PTNK 100% / Soundex=P352 100%
+Meaning Angle 100% / Use 100% / ConceptNet 100% / Glove
100% / FastText 100%
+
+Congratulations, you guessed correctly!</pre>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_round_2">Round 2</h3>
+<div class="listingblock">
+<div class="content">
+<pre>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 1): bail
+LongestCommonSubsequence 1
+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%
+
+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
+LongestCommonSubsequence 2
+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%
+
+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
+LongestCommonSubsequence 2
+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%
+
+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
+LongestCommonSubsequence 5
+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%
+
+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
+LongestCommonSubsequence 8
+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%
+
+Congratulations, you guessed correctly!</pre>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_round_3">Round 3</h3>
+<div class="paragraph">
+<p>Let’s take a first guess with a 10-letter (all distinct) word.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>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 1): aftershock
+LongestCommonSubsequence 3
+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>
+</div>
+</div>
+<div class="paragraph">
+<p>Tells us:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>We did two more deletes than inserts, so
+<span class="fuchsia">the hidden word has 8 characters</span>.</p>
+</li>
+<li>
+<p>If the hidden word is size 8, why would we ever do inserts, i.e. make it
longer? Doing the insert (and subsequent deletes) must have made it possible to
get 3 letters into the correct position.</p>
+</li>
+<li>
+<p>Soundex tells use that it either starts with A and the other consonant
+groupings are wrong, or it doesn’t start with A and one consonant
grouping is correct. Metaphone of 32% means we probably have two consonant
groupings correct.</p>
+</li>
+<li>
+<p>Our guess has 10 distinct letters. Jaccard of 33% tells
+that we have 4/12 or 5/15 letters correct. If we have 5 letters correct
+there would be up to 3 letters we don’t have, but adding 3 to the 10 in
our guess
+doesn’t give 15. So we have 4 of 12 letters. There must be up to 4
letters we don’t have. Add those 4 to our 10 gives 14, but we know there
is only 12 distinct letters, so the answer has two duplicates or a triple.
+I.e. <span class="fuchsia">the answer has 6 distinct letters</span>.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>The letters <code>e</code> and <code>s</code> are very common. Let’s
pick a word with
+2 of each that matches what we know from LCS.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>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 1): aftershock
+LongestCommonSubsequence 3
+Levenshtein Distance: 8, Insert: 1, Delete: 3, Substitute: 4
+Jaccard 33% (4/12) 1 / 3
+JaroWinkler PREFIX 56% / SUFFIX 56%
+Phonetic Metaphone=AFTRXK 32% / Soundex=A136 25%
+Meaning Angle 41% / Use 20% / ConceptNet -4% / Glove
-13% / FastText 11%
+
+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): patriate
+LongestCommonSubsequence 2
+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%
+
+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
+LongestCommonSubsequence 3
+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%
+
+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
+LongestCommonSubsequence 8
+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%
+
+Congratulations, you guessed correctly!</pre>
+</div>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Our Jaccard is now 1/11. That must be the 6 letters we tried plus
+5 others in the hidden word, so our correct letter isn’t one of the
duplicates.
+I.e. <span class="fuchsia">there is no S or E in the word</span>.</p>
+</li>
+<li>
+<p>Our soundex indicates the word doesn’t start with S which confirms
our previous derived fact.</p>
+</li>
+<li>
+<p>Our metaphone has dropped markedly. We know the S shouldn’t be there
+but with only 10%, only one of F or R is probably correct, and we
+probably need a K or T from turn 1.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Let’s try duplicates for <code>o</code> and <code>r</code>, and also
match LCS from previous guesses.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>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): motorcar
+LongestCommonSubsequence 2
+Levenshtein Distance: 8, Insert: 0, Delete: 0, Substitute: 8
+Jaccard 33% (3/9) 1 / 3
+JaroWinkler PREFIX 47% / SUFFIX 47%
+Phonetic Metaphone=MTRKR 43% / Soundex=M362 0%
+Meaning Angle 44% / Use 20% / ConceptNet -4% / Glove 6%
/ FastText 33%</pre>
+</div>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Soundex indicates that the word doesn’t start with M</p>
+</li>
+<li>
+<p>Our Jaccard is now 3/9. That must mean .</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_round_4">Round 4</h3>
+<div class="listingblock">
+<div class="content">
+<pre>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 1): aftershock
+LongestCommonSubsequence 3
+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>
+</div>
+</div>
+<div class="paragraph">
+<p>What do we know?</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>we deleted 4 letters, so <span class="fuchsia">the hidden word has 6
letters</span></p>
+</li>
+<li>
+<p>Jaccard of 50% is either 5/10 or 6/12. If the latter, we’d have all
the letters, so there can’t be 2 additional letters in the hidden word,
so it’s 5/10. That means we need to pick 5 letter
+from aftershock, duplicate one of them, and we’ll have all the
letters</p>
+</li>
+<li>
+<p>phonetic clues suggest it probably doesn’t start with A</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>In aftershock, F, H, and K, are probably least common. Let’s pick a
6-letter word from
+the remaining 7 letters that abides by our LCS clue. We know this can’t
be right because
+we aren’t duplicating a letter yet, but we just want to narrow down the
possibilities.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>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): coarse
+LongestCommonSubsequence 3
+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>
+</div>
+</div>
+<div class="paragraph">
+<p>This tells us:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>We now have 4 of the 5 distinct letters (we should discard 2)</p>
+</li>
+<li>
+<p>Phonetics indicates we are close but not very close yet,
+from the Metaphone value of KRS we should drop one and keep two.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Let’s assume C and E are wrong and bring in the other common letter,
T.
+We need to find a word that matches the LCS conditions from previous guesses,
+and we’ll duplicate one letter, S.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>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): roasts
+LongestCommonSubsequence 3
+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>
+</div>
+</div>
+<div class="paragraph">
+<p>We learned:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Phonetics dropped, so maybe S wasn’t the correct letter to bring in,
+we want the K (from letter C) and R from the previous guess.</p>
+</li>
+<li>
+<p>Also, the semantic meaning has bumped up to warm (from cold for previous
guesses).
+Maybe the hidden word is related to roasts.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Let’s try to word starting with C, related to roasts.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>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): carrot
+LongestCommonSubsequence 6
+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%
+
+Congratulations, you guessed correctly!</pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Success!</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
<h2 id="further_info">Further information</h2>
<div class="sectionbody">
<div class="paragraph">
diff --git a/blog/helloworldemoji.html b/blog/helloworldemoji.html
index 8ef17e4..4769b3f 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='./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'>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 [...]
<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 d122d5a..4dd890f 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: "groovy", value: 81 }, { category: "emoji", value:
8 }, { category: "set", value: 1 }, { category: "constraint programming",
value: 1 }, { category: "jacop", value: 2 }, { category: "or-tools", value: 2
}, { category: "choco", value: 3 }, { category: "jsr331", value: 1 }, {
category: "bytecode", value: 1 }, { category: "byte buddy", value: 1 }, {
category: "proguardcore", value: 1 }, { category: "asm", value: 1 }, {
category: "jvmadvent", value: 1 }, { categor [...]
+ { 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 } [...]
]);
wc.labels.template.setAll({
paddingTop: 5,
diff --git a/blog/lego-bricks-with-groovy.html
b/blog/lego-bricks-with-groovy.html
index 7a7d211..2ea3153 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 463276f..87f1689 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 78c6b5f..9b16a4f 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 41f6143..f7c4865 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 fdec113..0698b4a 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 b70c9ae..f0262bb 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='./helloworldemoji'>Hello
World with Emojis</a></li><li><a href='./deep-learning-and-eclipse-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'>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 b892f50..e7e4425 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 b0f8b0d..5ada9ee 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 365a302..0fced43 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='./groovy-list-proce [...]
+ </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 [...]
<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/working-with-sql-databases-with.html
b/blog/working-with-sql-databases-with.html
index 308e9f1..2e70377 100644
--- a/blog/working-with-sql-databases-with.html
+++ b/blog/working-with-sql-databases-with.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'>Working with SQL databases with Groovy and GraalVM</a></li><li><a
href='#_native_metadata' class='anchor-link'>Native Metadata</a></li><li><a
href='#_working_with_sql_in_groovy' class='anchor-link'>Working with SQL in
Groovy</a></li><li><a href='#_configuring_our_native_bu [...]
+ </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'>Working with SQL databases with Groovy and GraalVM</a></li><li><a
href='#_native_metadata' class='anchor-link'>Native Metadata</a></li><li><a
href='#_working_with_sql_in_groovy' class='anchor-link'>Working with SQL in
Groovy</a></li><li><a href='#_configuring_our_native_bu [...]
<div class="sectionbody">
<div class="paragraph">
<p>During the week, there was an interesting
diff --git a/blog/zipping-collections-with-groovy.html
b/blog/zipping-collections-with-groovy.html
index a9a576c..3d0a080 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">