Re: Static typing question

Agile Developer <[email protected]>
Newsgroups gmane.comp.lang.groovy.user
Message-ID <CAKmU=T-XE-G9-qN7v=ZM=fQ3z972iY8JBmd0X=JcXFv5HFqE9Q@mail.gmail.com>
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 was not 100% conforming to types.

I see your point that  @compilestatic groovy vs "free range" groovy
resembles the typescript vs javascript situation, still I do not find it
ideal to have 2 languages in terms of maintenance effort.

But I am not here to argue. Just wanted to ask and learn from the answers.

Vasilis

On Sun, Dec 31, 2023 at 4:38 PM Jochen Theodorou <[email protected]> wrote:

> 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 traditionally solved with
> > dynamic languages.
>
> I find the question strange to be frank. I know of no problem that
> requires a specific quality of the programming language to solve it
> (Touring complete?). Being that strongly or weakly typed, being that
> static or dynamic typed, being everything a logic clause or a list, ...
>
> I think this can be seen on my situation of typescript vs. javascript.
> Here typescript is really only an extension to javascript. Basically all
> constructs it adds are there for the type system. Typescript has a very
> practical type system where types do not have to be of the same name to
> be equal. And what typescript will produce at the end is just
> javascript. It does not make the code faster, it does not make solving
> problems more easy. In fact you can produce some very wild types in
> typescript, that will require another programmer to look up a lot of the
> specialties of the type system to understand them. So is Typescript of
> no use? No, it does help when refactoring larger code bases. Did I ever
> have to refactor a larger code base in typescript? Never - well once, it
> was not that big and it was really really difficult. You tend to use so
> many libraries that normally your code base really does not grow to that
> level. It does help avoiding the small mistakes any basic tests would
> uncover as well. So yeah... for me personally I have very little gain
> from typescript and it slows me down writing my code if I have to write
> a web-app. And still I have to write 90% of this code in typescript,
> because I work in a team and other people will later have to maintain
> this code. People I work with feel safer by using types.
>
> And in the end it is what counts most to the average programmer: the
> promise of safety.
>
> Did I ever have to refactor large Java code bases and it was a big pain?
> Oh yes - many times. Just because you have types does not prevent people
> from writing awfully unreadable code, misuse concepts, diverge from
> initial intentions, introduce no concepts half heartedly, plain ignore
> everything that has been done before, misunderstandings, ...
>
> It really boils down to 3 aspects here for me:
> (1) how long does an average programmer need to solve the problem
> (including libraries).
> (2) how long does it take an average programmer to produce an error free
> program.
> (3) how easily can another average programmer change the program.
>
>
> bye Jochen
>


-- 
Dr. Vasileios Anagnostopoulos (MSc,PhD)
Researcher/Developer
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.