Re: Static typing question

2024-01-03 Thread Jochen Theodorou
On 02.01.24 08:59, Agile Developer wrote: [...] >  @CompileStatic predecessor Groovy++ (which later afaik gave birth to Kotlin). I totally agree here. In a sense Kotlin is a statically-typed Groovy. In a sense yes. Though the focus is different. Groovy sees itself as a multiparadigm language

Re: Static typing question

2024-01-02 Thread MG
In a sense, yes, but (from the top of my head*): 1. Even in the statically compiled domain with some things missing 1. e.g. many AST-transformation annotations, such as @InheritConstructors comes to mind, which we use all the time. 2. Or macros. 2. And also with a syntax (taken fro

Re: Static typing question

2024-01-02 Thread Agile Developer
On Mon, Jan 1, 2024 at 1:57 AM MG wrote: > Hi Vasileios, > > we use our own Groovy framework to develop an in-house multi part web > application and accompanying SQL & PL/SQL generation framework, and have > been using Groovy for 10 years, including some dabbling in the > @CompileStatic predecess

Re: Static typing question

2024-01-01 Thread MG
Hi Jochen, that would actually be great, proceeding into 2024 with fingers crossed G-) Cheers, mg On 01/01/2024 14:46, Jochen Theodorou wrote: On 01.01.24 00:57, MG wrote: [...] **Alas that is not the case for JVM invoke dynamic, which is much slower when generating a really large number of

Re: Static typing question

2024-01-01 Thread Jochen Theodorou
On 01.01.24 00:57, MG wrote: [...] **Alas that is not the case for JVM invoke dynamic, which is much slower when generating a really large number of objects, which recently required us to make a part of our SQL generation code less user friendly, to make Groovy 3/4 with invoke dynamic as fast as

Re: Static typing question

2023-12-31 Thread MG
Hi Vasileios, we use our own Groovy framework to develop an in-house multi part web application and accompanying SQL & PL/SQL generation framework, and have been using Groovy for 10 years, including some dabbling in the @CompileStatic predecessor Groovy++ (which later afaik gave birth to Kotl

Re: Static typing question

2023-12-31 Thread Jochen Theodorou
On 30.12.23 19:17, Agile Developer wrote: Hi, I was a  4 years user of Grails/Groovy (last year mostly Python). With the general trend of people moving to static languages, is there any reason that Groovy needs to stay dynamic? I see Python having the mypy approach, I see gradle moving to Kotli

Re: Static typing question

2023-12-31 Thread Jochen Theodorou
On 31.12.23 16:21, Agile Developer wrote: Thank you very much Jochen for the answer. I agree that Typescript can be misused, but do you prefer a 10K LOC in Javascript or Typescript? Does really not matter much. What is more maintainable given best practices are respected in each language? Per

Re: Static typing question

2023-12-31 Thread o...@ocs.cz
Hi there, > On 31. 12. 2023, at 5:20, Agile Developer wrote: > can you give me a case not covered by a typed language? I'm really curious, > because the more I think the more I see modern PL practice/research has > uncovered typed language strengths. These days, typed languages solve more > a

Re: Static typing question

2023-12-31 Thread Agile Developer
Thank you very much Jochen for the answer. I agree that Typescript can be misused, but do you prefer a 10K LOC in Javascript or Typescript? What is more maintainable given best practices are respected in each language? Personally I would get up to speed faster in Typescript even If the developer wa

Re: Static typing question

2023-12-31 Thread Jochen Theodorou
On 31.12.23 05:20, Agile Developer wrote: Hi, Edmond can you give me a case not covered by a typed language? I'm  really curious, because the more I think the more I see modern PL practice/research has uncovered typed language strengths. These days, typed languages solve more and more issues tra

Re: Static typing question

2023-12-30 Thread Agile Developer
I also believe the canonical def games = Game.findAllByAverageDurationBetween(30, 90) > is nothing more than def games = (new > Gorm()).executeQuery("findAllByAverageDurationBetween",30, 90) class Gorm { ResultSet executeQuery(String query, Object... argos) //caching logic } though Mi

Re: Static typing question

2023-12-30 Thread Agile Developer
Hi, Edmond can you give me a case not covered by a typed language? I'm really curious, because the more I think the more I see modern PL practice/research has uncovered typed language strengths. These days, typed languages solve more and more issues traditionally solved with dynamic languages. O

Re: Static typing question

2023-12-30 Thread Schalk Cronje
As an example, Grolifant is a library for allowing Gradle plugins to maintain compatibility over wide range of Gradle releases. Currently this range is Gradle 4.3 - 8.5. Public interfaces are written in Java, but 99% of implementations are done in Groovy. Anything Groovy & public is statically

Re: Static typing question

2023-12-30 Thread Christopher Smith
I typically use Groovy in its static mode, and the single biggest value to me is the AST-transformation system. However, there are cases where I find dynamic mode very useful. 1. Methods that handle processing for particular subtypes of a base type. I could do something like a class-based map with

Re: Static typing question

2023-12-30 Thread Edmond Kemokai
>From the perspective of someone building products that leverage the dynamic language features, the answers is a resounding YES, plenty of reason to keep dual type support (both dynamic and static).

Static typing question

2023-12-30 Thread Agile Developer
Hi, I was a 4 years user of Grails/Groovy (last year mostly Python). With the general trend of people moving to static languages, is there any reason that Groovy needs to stay dynamic? I see Python having the mypy approach, I see gradle moving to Kotlin and FE mostly on Typescript. I understand