I mean, without any definitions I’d say JavaScript.
It’s kinda like Scheme: first class functions, vars and functions share namespace, etc
This. The first iteration of JavaScript by the creator was literally scheme. Later converted to the C-like syntax we know today because “boss don’t like scheme”.
Prolog
Elixir or Ruby
Julia, Elixir
…
C++ 40
C++ 40
Greenspun’s 10th rule
Logo
Haskell or Julia come to mind.
Just by the feel of it, Forth.
I think that MLs “feel” a lot like Lisp, they are missing the obvious macro systems, but have few syntactic constructs and control flow is mostly function application. Namely SML, OCaml, and Haskell. I haven’t touched any others.
Others have said Elixir and to some extent I agree, but maybe the Ruby syntax throws me off.
I Heard javascript started as a lisp or scheme but has it’s syntax changed
EcmaScript. It Was planned with scheme in mind and you can still feel it today. It is funny that many things people dislike about it have it’s origin in scheme. One of the problems is that it doesn’t look like a LISP language and people just see it like a Java like language. If they would familiarize themselves with the concepts, they would probably get the idea behind the language.
Dynamic scope, “this”, implicit casting. These are not scheme ideas.
R.
Define lisp first.
parenthesized prefix notation
Behold, a Lisp:
(identification-division (program-id :hello-world)) (procedure-division (main (display "Hello, world!") (stop run)))
That’ll do u/theangeryemacsshibe, that’ll do.
*swoon*… COBISP.
Elixir
i think for something to be like Lisp without actually being Lisp it would need to be functional and feature homoiconicity, or at least something like homoiconicity.The only language like that, that many people would not call a Lisp anyway, is Julia.
EDIT: wikipedia says Elixir too but I don’t really know anything about Elixir…
Smalltalk
This.
Smalltalk’s metaprogramming through classes-as-objects and code-as-objects is very much comparable to Lisp’s.
Ruby is a modern example, with Pascal/Algol-like syntax with lots pf sugar. It has some very rich metaprogramming.
Smalltalk also has similar interactive development styles. One can build the application incrementally piece-by-piece. It has a residual graphical integrated development environment -> the development environment is a part of the program. It uses late-binding via message-passing. It starts and saves images (-> dumps of the heap contents, data and code). It is introspective & reflective (one can find out about the running program and can change it).