News for hackers. Stuff that matters.
Re:Ruby 3.4.0 by pjmlp on Wednesday December 25, 2024 @04:53AM (#42507949)
That has been the story of every dynamic language since forever, thankfully the whole AI focus has made JITs finally matter in CPython world as well.

Personally I have learnt this lesson back in 2000's, in the age of AOLServer, Vignette, and our own Safelayer product. All based on Apache, IIS and Tcl.

We were early adopters of .NET, when it was only available to MSFT Partners and never again, using scripting languages without compilers, for full blown applications.

Those learnings are the foundations of OutSystems, same ideas, built with a powerful runtime, with the hindsight of our experiences.

Re:Ruby 3.4.0 by rapind on Wednesday December 25, 2024 @05:20AM (#42508033)
> Personally I have learnt this lesson back in 2000's, in the age of AOLServer, Vignette, and our own Safelayer product. All based on Apache, IIS and Tcl.

Woah, your mention of “Vignette” just brought back a flood of memories I think my subconscious may have blocked out to save my sanity.

Re:Ruby 3.4.0 by Chetan496 on Wednesday December 25, 2024 @06:57AM (#42508374)
Hey, I have worked on the Outsystems platform. Developed some applications. Do you work at Outsystems?
Re:Ruby 3.4.0 by pjmlp on Wednesday December 25, 2024 @07:47AM (#42508547)
No, I worked with the founders at a previous startup, Intervento, which became part of an EasyPhone acquisition, which got later renamed into Altitude Software alongside other acquisitions.

They eventually left and founded OutSystems with what we learned since the Intervento days, OutSystems is of the greatest startup stories in the Portuguese industry.

This was all during dotcom wave from the 2000's, instead I left to CERN.

Re:Ruby 3.4.0 by rat87 on Wednesday December 25, 2024 @09:10AM (#42508841)
What's a scripting language? Also I'm not sure for TCL (https://news.ycombinator.com/item?id=24390937 claims it's had a bytecode compiler since around 2000) but the main python and Ruby implementations have compilers (compile to bytecode then interpret the bytecode). Apparently ruby got an optional (has to be enabled) jit compiler recently and python has an experimental jit in the last release (3.13).
Re:Ruby 3.4.0 by igouy on Wednesday December 25, 2024 @02:21PM (#42510580)
"... the distinguishing feature of interpreted languages is not that they are not compiled, but that any eventual compiler is part of the language runtime and that, therefore, it is possible (and easy) to execute code generated on the fly."

p57 https://www.lua.org/pil/#1ed

Re:Ruby 3.4.0 by pjmlp on Thursday December 26, 2024 @09:39AM (#42515423)
Re:Ruby 3.4.0 by zahlman on Thursday December 26, 2024 @01:04AM (#42513441)
>thankfully the whole AI focus has made JITs finally matter in CPython world as well.

Isn't most of the work in Python AI projects done in C or C++ extensions anyway?

Re:Ruby 3.4.0 by pjmlp on Thursday December 26, 2024 @09:37AM (#42515415)
Yes, but not everyone loves to have dual stack development, I surely didn't, back in the Tcl days, eventually we ask ourselves for how long.
Re:Ruby 3.4.0 by nerdponx on Thursday December 26, 2024 @12:12PM (#42516351)
[delayed]
Re:Ruby 3.4.0 by pjmlp on Thursday December 26, 2024 @02:31PM (#42517176)
It is definitely how it works in Python.

As if there is nothing else to chose from regarding Python performance issues and libraries used by folks.

Not everything is fashionable AI.

Re:Ruby 3.4.0 by zahlman on Thursday December 26, 2024 @05:44PM (#42518434)
Can you name specific "un-fashionable" AI projects that are dependent on Python code for things that have any significant performance impact, which are seeing significant benefits from Python JIT implementations?
Re:Ruby 3.4.0 by cheikhcheikh on Friday December 27, 2024 @09:37AM (#42522354)
He cannot
Re:Ruby 3.4.0 by pjmlp on Friday December 27, 2024 @11:12AM (#42523348)
Microsoft, Facebook, NVidia and Intel apparently can.
Re:Ruby 3.4.0 by pjmlp on Friday December 27, 2024 @11:12AM (#42523345)
I guess you will have to ask Microsoft, Facebook, NVidia and Intel why they are bothering then.
Re:Ruby 3.4.0 by zahlman on Friday December 27, 2024 @05:32PM (#42526681)
Can you name projects at those companies which meet the description?
Re:Ruby 3.4.0 by nerdponx on Thursday December 26, 2024 @06:04PM (#42518569)
The comment thread was specifically about AI, so my comments were specifically meant for that context. I wasn't clear enough, sorry for the confusion.
Re:Ruby 3.4.0 by maccard on Thursday December 26, 2024 @11:11AM (#42515987)
HHVM has raised its head.
Re:Ruby 3.4.0 by pjmlp on Thursday December 26, 2024 @02:32PM (#42517183)
Which happens to have a JIT compiler, and contributed to standard PHP having one as well.
Re:Ruby 3.4.0 by nerdponx on Thursday December 26, 2024 @12:21PM (#42516406)
> AI

The push for Python performance and JIT compilation has little to do with AI and more to do with Python's explosion in adoption for backend server applications in the 2010s, as well as the dedication of smaller projects like PyPy that existed largely because it was possible to make them exist. The ML/AI boom helped spread Python even farther and wider, yes, but none of the core language performance improvements are all that relevant for ML or AI.

As another commenter pointed out, the performance bottlenecks in AI specifically have essentially to do with the CPython runtime performance. The only exception is in the pre-processing of very large text corpora, and that alone has hardly been a blip on the radar of the people working on CPython performance.

Moreover, most of the "Python performance" projects that do sit closer to machine learning use cases (Cython-Numpy integration, Numba, Nuitka) are more or less orthogonal to the more recent push for Python interpreter performance.

Cython itself and MypyC are mainly relevant because they are intended to be general-ish purpose performance boosters for CPython, and in doing so helped fill the need for greater performance in "hot and loopy" code such as network protocols, linters, and iterators. Cython also acted as a convenient glue layer for ad-hoc C library binding. But neither project is all that closely related to AI or to the various JIT compilers that have arisen over the years.

Re:Ruby 3.4.0 by pjmlp on Thursday December 26, 2024 @02:29PM (#42517152)
Not at all, given Facebook and Microsoft involvement into making CPython folks finally accept a JIT has to be part of the story, coupled by NVidia and Intel work on GPU JIT DSLs for Python.
Re:Ruby 3.4.0 by nerdponx on Thursday December 26, 2024 @06:06PM (#42518576)
Yeah but how much of the Microsoft and Facebook effort was due to AI directly, as opposed to the general popularity of Python? which is undoubtedly driven nowadays by AI, but indirectly.
Re:Ruby 3.4.0 by pjmlp on Friday December 27, 2024 @11:13AM (#42523362)
What Python projects do they have outside AI?
Re:Ruby 3.4.0 by saagarjha on Monday December 30, 2024 @05:33AM (#42548132)
Instagram?