Ho appena letto https://techfindings.one/archives/2652 sulla programmazione funzionale e mi sono imbattuto in questo:
Le funzioni anonime spesso non possono essere compilate JIT e non saranno mai ottimizzate
Qualcuno può spiegarmi perché è così?
Ho appena letto https://techfindings.one/archives/2652 sulla programmazione funzionale e mi sono imbattuto in questo:
Le funzioni anonime spesso non possono essere compilate JIT e non saranno mai ottimizzate
Qualcuno può spiegarmi perché è così?
Risposte:
Esiste un malinteso comune sulle funzioni nidificate, denominate o anonime, in cui le persone pensano che, poiché la funzione è dichiarata all'interno di un'altra funzione, il compilatore deve ricompilarla ogni volta che viene invocata la funzione esterna. Questo non è vero. Il codice della funzione è costante, anche se il suo contesto chiamante non lo è, e può essere integrato o ottimizzato come qualsiasi altra funzione. Questa confusione sembra particolarmente potente tra i programmatori che utilizzano principalmente funzioni nidificate nelle implementazioni del linguaggio interpretato / JIT, come in questa domanda .
Quell'articolo ha alcune idee sbagliate simili che mostrano che non capisce i problemi così come pensa di farlo. Non lo considero una fonte affidabile per l'apprendimento della programmazione funzionale.