Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
lispm
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
31 ms
·
331.
▲
by
lispm
2y ago
You are on the surface. I'm talking about a computing paradigm defined by LISP. A foundational model at the core of the language, enabling us to understand how the List Processor actually works. LISP has dialects which are not homoicon
332.
▲
by
lispm
2y ago
LISP does not stand for "List processing", it stands for "List Processor". To quote John McCarthy: "A programming system called LISP (for LISt Processor) has been developed for the IBM 704...". This is a progra
333.
▲
by
lispm
2y ago
one can easily miss the linked examples, here are the links from the GTFL page: http://www.martin-loetzsch.de/gtfl/application-example-1/ http://www.martin-loetzsch.de/gtfl/application-example
334.
▲
by
lispm
2y ago
But why is a list not a list across all platforms? Other Lisp dialects run on top of the JVM, .net, JavaScript, LLVM, UNIX, iOS, Android, Linux, ... and there is no such problem. Try ABCL on the JVM. (listp (cons 1 '(2 3))) is T. I wou
335.
▲
by
lispm
2y ago
Your example looks like Clojurescript? It is also inconsistent between variants? Clojure 1.11.3 user=> (list? (cons 1 '(2 3))) false
336.
▲
by
lispm
2y ago
and then you get this in Clojure: user=> (list? (cons 1 '(2 3))) false user=> (cons 1 '(2 3)) (1 2 3) That's "strange", isn't it? It prints as (1 2 3), but it is not a list? So there are thin
337.
▲
by
lispm
2y ago
I usually don't want to call people "idiots", but I would want to prevent confusion. Even though English is a Germanic language, it's not German. It's a matter of expectation. If a book title says "Lerne Deutsc
338.
▲
by
lispm
2y ago
"continuations" are not in standard Common Lisp. They are a Scheme feature (-> functions which capture a state of computation). Common Lisp has a standardized exception handling system called the "Condition system", i
339.
▲
by
lispm
2y ago
"Being a Lisp" or "being a dialect of Lisp", these are two different things for me. But even the "dialect of Lisp" actually is more like "spiritual dialect of Lisp". Clojure was from the beginning des
340.
▲
by
lispm
2y ago
Common Lisp and/or its implementations (and a bunch of other dialects) have most most of the features of the original LISP directly, often with minor changes, like many of its operators and data structures (like the linked list). It wa
341.
▲
by
lispm
2y ago
Uncut version: https://www.dreamsongs.com/Files/HOPL2-Uncut.pdf A Pattern of Language Evolution, Gabriel/Steele 2008, https://www.dreamsongs.com/Files/PatternOfLanguageEvolution....
342.
▲
by
lispm
2y ago
On the positive side, one can also study the works of brilliant minds... like the original work on the Common Lisp Object System and its metaobject protocol. It added support for object-oriented programming to Lisp and was originally develo
343.
▲
by
lispm
2y ago
"self tail recursion" is only a simple case of the idea of tail calls (-> tail call optimization, TCO). In a Lisp variant/implementation with TCO (generally Scheme implementations and also a bunch of CL compilers, like SBC
344.
▲
by
lispm
2y ago
> More a curiosity than something practical and it's looking like it still belongs in the 70s. Emacs also belongs to the 70s. The UI basics were from TECO Emacs, mid 70s and many are still there. Stuff like the "Meta" key
345.
▲
by
lispm
2y ago
> This level of introspection goes beyond anything available today except some Smalltalk environments (which lose on practicality). GNU Emacs has a bunch of user-facing C code which can't be changed live. Many Lisp systems (and also
346.
▲
by
lispm
2y ago
> Lisp syntax doesn't just feature lists, Lisp syntax is those lists (Lisp = LISt Processing) Lisp syntax is on top of lists. Lisp has as basic forms functions, built-in operators and macros. Each new macro implements syntax. > O
347.
▲
by
lispm
2y ago
The "standard" has a huge amount of undefined behavior and also defined unspecified behavior. For example for everything "system class" it is undefined how this thing is implemented - there is an API specified. An exampl
348.
▲
by
lispm
2y ago
It's not that difficult. Lisp makes it easier, because one can look at code. For example look at this built-in Lisp macro example, which iterates from 0 to 9 and writes the numbers. CL-USER> (dotimes (i 10) (wri
349.
▲
by
lispm
2y ago
It's not that misleading, though, true, both provide various interactive development environments, with Smalltalk versions very much GUI tool based (with tools like the System Browser). Typically when one starts a Lisp development syst
350.
▲
by
lispm
2y ago
If we look at macros in Scheme R7RS they are mostly transformers on patterns. -> https://standards.scheme.org/corrected-r7rs/r7rs-Z-H-6.html#... > If your not careful to use facilities like gensym and packages it
351.
▲
by
lispm
2y ago
The language features that make this possible are a) late-binding and b) resident development tools (compiler, debugger, interpreter, inspector, trace, ... are all included in the runtime).
352.
▲
by
lispm
2y ago
The REPL often is also the default debugger. On error one gets a debug REPL at the point of the error (no unwinding), one debug level deeper. The debug REPL is basically a normal REPL, but with some debug features (stack movement, ...) and
353.
▲
by
lispm
2y ago
> compiled language more like "batch compiled language". In many Lisps one would incrementally compile code. Common Lisp has already three functions built-in: LOAD, COMPILE and COMPILE-FILE. How they work is depending on the im
354.
▲
by
lispm
2y ago
what can go wrong?
355.
▲
by
lispm
2y ago
In Lisp one could have (-> a b c d), just like (+ (+ 2 3) 4) is (+ 2 3 4).
356.
▲
by
lispm
2y ago
I wasn't responding to your comment.
357.
▲
by
lispm
2y ago
I wonder how much performance will be used to run all the advanced Microsoft telemetry software (which collects & reports user data for Microsoft and which can't be disabled) and all that ad software they force on users. I still wo
358.
▲
by
lispm
2y ago
Macs were long hindered by Intel processors to have long battery lifes AND/OR good performance. Two examples of MacBooks I had: The 12" MacBook. Great form factor, bad software (graphics driver code was especially poor), poor keyb
359.
▲
by
lispm
2y ago
There are a bunch of confusions to the relationship of LISP, the LISP system and the LISP paper of 1960. The "original paper on Lisp" is from 1960: http://www-formal.stanford.edu/jmc/recursive.html A bunch of
360.
▲
by
lispm
2y ago
https://usocket.common-lisp.dev/
More ›