News for hackers. Stuff that matters.
Re:Modern Python Performance Considerations by pjmlp on Thursday May 05, 2022 @12:22PM (#31275321)
Agreed, my only use for Python since version 1.6, is portable shell scripting or when sh scripts get too complicated.

Anything beyond that, there are compiled languages with REPL available.

Re:Modern Python Performance Considerations by mrtranscendence on Thursday May 05, 2022 @01:13PM (#31276014)
What compiled languages do you have in mind? I suppose technically there are repls for C or Rust or Java, but I wouldn't consider them ideal for interactive programming. Functional programming might do a bit better -- Scala and GHCi work fine interactively. Does Go have a repl?
Re:Modern Python Performance Considerations by pjmlp on Thursday May 05, 2022 @01:51PM (#31276500)
Java, C#, F#, Lisp variants, and C++.

Eclipse has Java scratchpads for ages, Groovy also works out for trying out ideas and nowadays we have jshell.

F# has a REPL in ML linage, and nowadays C# also shares a REPL with it in Visual Studio.

Lisp variants, going at it for 60 years.

C++, there are hot reload environments, scripting variants, and even C and C++ debuggers can be quite interactive.

I used GDB in 1996, alongside XEmacs, as poor man's REPL while creating a B+Tree library in C.

Yes, there are Go interpreters available,

https://github.com/traefik/yaegi

Re:Modern Python Performance Considerations by cozzyd on Thursday May 05, 2022 @09:37PM (#31280251)
Particle physicists have been using interpreted c++ for "macros" forever. First using the terrible hack of cint, now using cling which is quite good.
Re:Modern Python Performance Considerations by pjmlp on Friday May 06, 2022 @01:31AM (#31281645)
Indeed, although I remember there used to be some commercial ones as well, from ads on The C/C++ Users' Journal and Dr. Dobbs.
Re:Modern Python Performance Considerations by eatonphil on Thursday May 05, 2022 @04:35PM (#31278096)
> compiled languages

Might be tripping you up. Very few languages require that implementations be compiled or interpreted. For most languages, having a compiler or interpreter is an implementation decision.

I can implement Python as an interpreter (CPython) or as a compiler (mypyc). I can implement Scheme as an interpreter (Chicken Scheme's csi) or as a compiler (Chicken Scheme's csc). The list goes on: Standard ML's Poly/ML implementation ships a compiler and an interpreter; OCaml ships a compiler and an interpreter.

There are interpreted versions of Go like https://github.com/traefik/yaegi. And there are native-, AOT-compiled versions of Java like GraalVM's native-image.

For most languages there need be no relationship at all between compiler vs interpreter, static vs dynamic, strict or no typing.