Re:What is a programmable programming language? (2019)
by agumonkey on Monday June 06, 2022 @02:19AM
(#31637701)
You say it yourself, js is part scheme part self, and the algol { clothing } shift it a large step away from scheme since the functional aspects became culturally secondary for more than a decade. The imperative aspects are the one causing bugs IMO.
Re:What is a programmable programming language? (2019)
by astrange on Monday June 06, 2022 @02:38AM
(#31637805)
Well remember “functional vs imperative” isn’t a real distinction - Lisp is imperative. That showed up elsewhere where the “pure functional” languages like Haskell are the not-imperative ones.
JS has other differences on the “correctness” spectrum, like all numbers are doubles instead of bignums. But even if that’s “incorrect”, just imagine how much more memory your Chrome tabs would use if you let people use bignums everywhere.
Re:What is a programmable programming language? (2019)
by agumonkey on Monday June 06, 2022 @04:00AM
(#31638194)
Scheme pushed for functional much more than early lisp (and Id love for early lispers to pitch in about the imperative traits of lisp, it's a bit fuzzy if it was a desired trait or a commercially necessary addition facing fortan).
Bye, why would a fully numeric tower js only use the least machine friendly format everywhere ? Did I miss something ?
Re:What is a programmable programming language? (2019)
by lispm on Monday June 06, 2022 @04:32AM
(#31638353)
> JavaScript is literally a Scheme “implementation”, as in it started as Scheme in a browser but they removed the s-exprs (the interface) and kept the implementation.
do you have any link to a source for this claim?
AFAIK JavaScript started as a language called Mocha, which was hacked together in a few days: Java syntax, Scheme functions + Self object system + plus a bunch of other things.
At that time: no symbols, no s-expressions, no cons cells, no lists, no macros, no tail call optimization, ...
It does still have the other similarities; it has closures and a prototype based object system. In the 90s we only had boring Blub languages, so most of the influence that allowed such powerful concepts came from Lisp. (Though I think the prototypes are from Self.)