Re: Revamp of introductory paragraph on website

2025-02-28 Thread MG

Hi Paul,

I am happy with the text, even though I think Groovy itself is an 
elegant language, not just the DSLs you can create with it ;-)


Joking aside, my only real feedback would be to maybe add the word 
"also" as shown below, to make it absolutely clear that Groovy is a full 
blown programming language, and not "just" a script language:


Apache Groovy is a multi-faceted language for the JVM. It aims to 
provide a*Java-like feel and syntax*, but with*added productivity*features.
It supports OO and functional paradigms, and offers both static and 
dynamic natures for strong yet flexible typing.
It also supports the creation of powerful scripts and elegant 
Domain-Specific Languages.
It offers bidirectional interoperability with Java classes and 
libraries, and supports language extensions through in-language macros, 
AST transformations and meta-programming.


Cheers,
mg


On 28/02/2025 06:00, Paul King wrote:

Thanks for the feedback folks. In the interests of having the small
improvement to the website ready in time for the 4.0.26 release, I
went with this:

https://github.com/apache/groovy-website/commit/8c4c2a8e67  (commit)

https://groovy-lang.org/  (site)

But shout if you think it needs further work.

Paul.


Virus-free.www.avast.com

<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>

On Tue, Feb 25, 2025 at 1:21 PM Paul King  wrote:

Hi folks,

Currently the intro description on groovy-lang.org says:

A multi-faceted language for the Java platform

Apache Groovy is a powerful, optionally typed and dynamic language,
with static-typing and static compilation capabilities, for the Java
platform aimed at improving developer productivity thanks to a
concise, familiar and easy to learn syntax. It integrates smoothly
with any Java program, and immediately delivers to your application
powerful features, including scripting capabilities, Domain-Specific
Language authoring, runtime and compile-time meta-programming and
functional programming.

It has been a while since we updated that description. Should we
revamp it? Perhaps something like this:

A flexible and extensible Java-like language for the JVM

Apache Groovy is a multi-faceted language for the JVM. It aims to
provide a Java-like feel and syntax while adding productivity
features. It supports OO and functional paradigms, static and dynamic
strong typing, scripting and Domain-Specific Language features,
complete interoperability with Java classes and libraries, declarative
programming through AST transforms and macros, and extensibility
mechanisms like metaprogramming.

Cheers, Paul.


Re: Revamp of introductory paragraph on website

2025-02-27 Thread Paul King
Thanks for the feedback folks. In the interests of having the small
improvement to the website ready in time for the 4.0.26 release, I
went with this:

https://github.com/apache/groovy-website/commit/8c4c2a8e67 (commit)

https://groovy-lang.org/ (site)

But shout if you think it needs further work.

Paul.


Virus-free.www.avast.com

<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>

On Tue, Feb 25, 2025 at 1:21 PM Paul King  wrote:
>
> Hi folks,
>
> Currently the intro description on groovy-lang.org says:
>
> A multi-faceted language for the Java platform
>
> Apache Groovy is a powerful, optionally typed and dynamic language,
> with static-typing and static compilation capabilities, for the Java
> platform aimed at improving developer productivity thanks to a
> concise, familiar and easy to learn syntax. It integrates smoothly
> with any Java program, and immediately delivers to your application
> powerful features, including scripting capabilities, Domain-Specific
> Language authoring, runtime and compile-time meta-programming and
> functional programming.
>
> It has been a while since we updated that description. Should we
> revamp it? Perhaps something like this:
>
> A flexible and extensible Java-like language for the JVM
>
> Apache Groovy is a multi-faceted language for the JVM. It aims to
> provide a Java-like feel and syntax while adding productivity
> features. It supports OO and functional paradigms, static and dynamic
> strong typing, scripting and Domain-Specific Language features,
> complete interoperability with Java classes and libraries, declarative
> programming through AST transforms and macros, and extensibility
> mechanisms like metaprogramming.
>
> Cheers, Paul.


Re: Revamp of introductory paragraph on website

2025-02-25 Thread MG

Hi Paul,

I would propose a sort of hybrid between the two versions, something 
along the line of:


/An elegant, Java syntax compatible & interoperable static & dynamic 
language for the JVM

/ /
Apache Groovy is a multi-faceted JVM language, which aims to
be as Java syntax compatible as possible, while adding productivity
features such as string interpolation, powerful annotations, and 
capturing closures on top of that.

It supports OO and functional paradigms, traits, static and dynamic
strong typing, usage as a script language, as well as the creation of 
Domain-Specific Languages.
It has complete bidirectional interoperability with Java 
classes/libraries, and supports language
extensions through in-language macros, AST transformations and 
meta-programming.

/
Cheers,
mg


On 25/02/2025 04:21, Paul King wrote:

Hi folks,

Currently the intro description on groovy-lang.org says:

A multi-faceted language for the Java platform

Apache Groovy is a powerful, optionally typed and dynamic language,
with static-typing and static compilation capabilities, for the Java
platform aimed at improving developer productivity thanks to a
concise, familiar and easy to learn syntax. It integrates smoothly
with any Java program, and immediately delivers to your application
powerful features, including scripting capabilities, Domain-Specific
Language authoring, runtime and compile-time meta-programming and
functional programming.

It has been a while since we updated that description. Should we
revamp it? Perhaps something like this:

A flexible and extensible Java-like language for the JVM

Apache Groovy is a multi-faceted language for the JVM. It aims to
provide a Java-like feel and syntax while adding productivity
features. It supports OO and functional paradigms, static and dynamic
strong typing, scripting and Domain-Specific Language features,
complete interoperability with Java classes and libraries, declarative
programming through AST transforms and macros, and extensibility
mechanisms like metaprogramming.

Cheers, Paul.


Re: Revamp of introductory paragraph on website

2025-02-25 Thread Paul King
Comment below.

On Tue, Feb 25, 2025 at 6:32 PM Guillaume Laforge  wrote:
>
> You're dropping static compilation?

Yeah, I find a lot of the time when explaining the language at first
glance to many folks, they don't grasp the subtleties of static typing
vs static compilation. I was looking for that opening para to be less
of a mouthful.

I could change "static and dynamic strong typing" to "static and
dynamic compilation" or "offering static and dynamic compiler modes"
or "supporting static and dynamic natures". But many folks seem to
assume that "dynamic" means no type safety, i.e. unsafe, rather than
runtime type checking. That's why I kept the "strong typing" bit.

Static compilation is mentioned under powerful features but we could
expand on that somehow.

> Le mar. 25 févr. 2025, 04:22, Paul King  a écrit :
>>
>> Hi folks,
>>
>> Currently the intro description on groovy-lang.org says:
>>
>> A multi-faceted language for the Java platform
>>
>> Apache Groovy is a powerful, optionally typed and dynamic language,
>> with static-typing and static compilation capabilities, for the Java
>> platform aimed at improving developer productivity thanks to a
>> concise, familiar and easy to learn syntax. It integrates smoothly
>> with any Java program, and immediately delivers to your application
>> powerful features, including scripting capabilities, Domain-Specific
>> Language authoring, runtime and compile-time meta-programming and
>> functional programming.
>>
>> It has been a while since we updated that description. Should we
>> revamp it? Perhaps something like this:
>>
>> A flexible and extensible Java-like language for the JVM
>>
>> Apache Groovy is a multi-faceted language for the JVM. It aims to
>> provide a Java-like feel and syntax while adding productivity
>> features. It supports OO and functional paradigms, static and dynamic
>> strong typing, scripting and Domain-Specific Language features,
>> complete interoperability with Java classes and libraries, declarative
>> programming through AST transforms and macros, and extensibility
>> mechanisms like metaprogramming.
>>
>> Cheers, Paul.


Re: Revamp of introductory paragraph on website

2025-02-25 Thread Sergio del Amo
+1

> On 25 Feb 2025, at 09:32, Søren Berg Glasius  wrote:
> 
> +1 
> 
> Den tirs. 25. feb. 2025 kl. 04.22 skrev Paul King  >:
>> Hi folks,
>> 
>> Currently the intro description on groovy-lang.org  
>> says:
>> 
>> A multi-faceted language for the Java platform
>> 
>> Apache Groovy is a powerful, optionally typed and dynamic language,
>> with static-typing and static compilation capabilities, for the Java
>> platform aimed at improving developer productivity thanks to a
>> concise, familiar and easy to learn syntax. It integrates smoothly
>> with any Java program, and immediately delivers to your application
>> powerful features, including scripting capabilities, Domain-Specific
>> Language authoring, runtime and compile-time meta-programming and
>> functional programming.
>> 
>> It has been a while since we updated that description. Should we
>> revamp it? Perhaps something like this:
>> 
>> A flexible and extensible Java-like language for the JVM
>> 
>> Apache Groovy is a multi-faceted language for the JVM. It aims to
>> provide a Java-like feel and syntax while adding productivity
>> features. It supports OO and functional paradigms, static and dynamic
>> strong typing, scripting and Domain-Specific Language features,
>> complete interoperability with Java classes and libraries, declarative
>> programming through AST transforms and macros, and extensibility
>> mechanisms like metaprogramming.
>> 
>> Cheers, Paul.
> 
> 
> 
> --
> 
> Med venlig hilsen,
> Søren Berg Glasius
> 
> Hedevej 1, Gl. Rye, 8680 Ry
> Mobile: +45 40 44 91 88
> --- Press ESC once to quit - twice to save the changes.



Re: Revamp of introductory paragraph on website

2025-02-25 Thread Søren Berg Glasius
+1

Den tirs. 25. feb. 2025 kl. 04.22 skrev Paul King :

> Hi folks,
>
> Currently the intro description on groovy-lang.org says:
>
> A multi-faceted language for the Java platform
>
> Apache Groovy is a powerful, optionally typed and dynamic language,
> with static-typing and static compilation capabilities, for the Java
> platform aimed at improving developer productivity thanks to a
> concise, familiar and easy to learn syntax. It integrates smoothly
> with any Java program, and immediately delivers to your application
> powerful features, including scripting capabilities, Domain-Specific
> Language authoring, runtime and compile-time meta-programming and
> functional programming.
>
> It has been a while since we updated that description. Should we
> revamp it? Perhaps something like this:
>
> A flexible and extensible Java-like language for the JVM
>
> Apache Groovy is a multi-faceted language for the JVM. It aims to
> provide a Java-like feel and syntax while adding productivity
> features. It supports OO and functional paradigms, static and dynamic
> strong typing, scripting and Domain-Specific Language features,
> complete interoperability with Java classes and libraries, declarative
> programming through AST transforms and macros, and extensibility
> mechanisms like metaprogramming.
>
> Cheers, Paul.
>


-- 

Med venlig hilsen,
Søren Berg Glasius

Hedevej 1, Gl. Rye, 8680 Ry
Mobile: +45 40 44 91 88
--- Press ESC once to quit - twice to save the changes.


Re: Revamp of introductory paragraph on website

2025-02-25 Thread Guillaume Laforge
You're dropping static compilation?

Le mar. 25 févr. 2025, 04:22, Paul King  a écrit :

> Hi folks,
>
> Currently the intro description on groovy-lang.org says:
>
> A multi-faceted language for the Java platform
>
> Apache Groovy is a powerful, optionally typed and dynamic language,
> with static-typing and static compilation capabilities, for the Java
> platform aimed at improving developer productivity thanks to a
> concise, familiar and easy to learn syntax. It integrates smoothly
> with any Java program, and immediately delivers to your application
> powerful features, including scripting capabilities, Domain-Specific
> Language authoring, runtime and compile-time meta-programming and
> functional programming.
>
> It has been a while since we updated that description. Should we
> revamp it? Perhaps something like this:
>
> A flexible and extensible Java-like language for the JVM
>
> Apache Groovy is a multi-faceted language for the JVM. It aims to
> provide a Java-like feel and syntax while adding productivity
> features. It supports OO and functional paradigms, static and dynamic
> strong typing, scripting and Domain-Specific Language features,
> complete interoperability with Java classes and libraries, declarative
> programming through AST transforms and macros, and extensibility
> mechanisms like metaprogramming.
>
> Cheers, Paul.
>