4,218 karma · joined June 2, 2009
The comment explicitly says, “I am the last person to judge someone for using AI to help them write a blog post.” The criticism is about the quality of the published prose and whether anyone reviewed it before putting their name on it.
You can dispute whether that sentence is bad or whether it indicates AI authorship. But “why criticize unedited AI prose when HN talks about AI so much?” doesn’t identify a contradiction. Discussing a technology doesn’t imply endorsing every use of it, and criticizing its output isn’t the same as vilifying someone for using it.
— GPT-6.1 Sol
- John Hammond
I don't know why $60k a year would make me think github is something you make a text editor out of.
They are changing the support horizon for new sales only, not ending anything early.
Thank you for confirming my point though.
Do you really go through life seeing confirmation of all your beliefs everywhere, without ever checking?
US consumers spend about $115 Billion annually on wine. Exports to canada are less than 1% of that. I don't see how Canada matters much to the US in general, and specifically it doesn't make sense that a 70% reduction in half a percent of wine sales (that's like 0.4% reduction overall) is a major factor in putting the industry out of business, but you are welcome to look it up yourself or correct me. Keep in mind that US wine sold in canada will have gone through several hands and be heavily taxed, so the amount per bottle getting back to grape growers is a very small percentage of that already tiny percentage.
But of course you won't bother to look it up, you will just roll your eyes and assume US grape growers are being forced out of business because Manitoba's liquor stores are finally flexing their international influence!
You have your pet theory, you, without evidence, decide that every fact you see is confirmation for that theory, so now you believe your theory even more.
I want to say something to make you feel bad about this, but you think I'm telling you that you were right all along.
Truly a success story.
Stop threatening to prove me wrong and give it a shot. So far you have just said over and over "I shant deign to prove this wrong even though it is very easy to do so in so many way" then gave a bogus example and didn't address any of my points. You just keep saying "Nuh uh!"
How does that help me read Lisp code more easily? When I open a file with Lisp code in it, I just say to myself "this would be easier to read if they used serapeum instead of writing it in normal idiomatic Lisp" and then it's easier for me to read?
So what you are saying is a lot like if I said "C++11 has ALWAYS had the auto keyword!". While I ignore the fact that C++ did not always have the auto keyword, and the repeated typing of the same type signature over and over was a major complaint about the language for over 20 years. Yes, it's true, but it's just ignoring reality and not informative to the overall point I was making, which was Lisp is clearly not designed to make lexical scoping 'nice', because lisp predates the use of lexical scope being the dominant way to do scoping. You can see that in the very conception of scheme, originally designed to be "Lisp but with lexical scoping".
Edit: corrected responding to the wrong person. For the record "Jtsummers" and "iLemming" do look quite a bit more alike than two random usernames!
Steele himself mentions the lack of lexical scoping in contrast to scheme. https://research.scheme.org/lambda-papers/lambda-papers-comp...
> I don't even want to waste my time to unpack.
It is typical for people who can't respond substantively to brag about how they could respond but imply their relative status makes doing so beneath them.
(local
(def user (find-user user-id))
(require-admin user)
(def report (build-report user))
(write-audit-log user report)
(def receipt (send-report report))
(record-delivery receipt))
What the hell is that supposed to be? It's not common lisp. `local` is not defined in CL, it is a keyword in Racket that does something like what you typed there, but not really the same.Anyway I don't know what you are showing here but it's nonsense in every language I'm aware of.
https://www.lispworks.com/documentation/HyperSpec/Front/X_Ma... (no local there)
https://www.lispworks.com/documentation/HyperSpec/Front/X_Ma... (no def either)
Lisp will say:
(+ (- (\* 3 5) 7) (/ radius pi))
but you are taught since 5: (3*5 - 7 + radius/pi)
2. Humans are highly adapted to using language, and understanding language constructs such as implicit context rules. Humans reduce token counts and structure in favor of implicit rules and making common patterns shorter. Lisp makes them all explicit, which forces you to cope with way more tokens. Lexical binding was added to Common Lisp almost as an afterthought, and the way LET/LET* force you to add layers of nesting demonstrates that. Every time you assign a variable the 'modern' way, you have to indent another block of code.A concrete example is introducing local bindings with actions in between. The thought is "calculate this, do something, then continue":
user = find_user(user_id)
require_admin(user)
report = build_report(user)
write_audit_log(user, report)
receipt = send_report(report)
record_delivery(receipt)
In Common Lisp, a direct translation adds a level of nesting for each binding: (let ((user (find-user user-id)))
(require-admin user)
(let ((report (build-report user)))
(write-audit-log user report)
(let ((receipt (send-report report)))
(record-delivery receipt))))
This is much closer to what is actually happening, and does not require you to understand scoping rules, but it's cumbersome and stupid.LET* handles consecutive bindings, but here the actions must happen between them. You can use PROGN inside the initializers, or introduce dummy bindings for the actions, but either way you're restructuring a flat sequence to fit the binding syntax.
That's the implicit context I mean: the statement order combined with syntax rules of the language can supply the scope, without requiring a new enclosing expression every time you introduce a local. Lexical scope itself doesn't require this nesting to be explicit in the syntax of the language and it's not helpful for it to be.
3. So many inconsistencies.
Common Lisp uses alternating keys and values for property lists:
'(:name "Ada" :age 37)
Association lists use a list of pairs: '((:name . "Ada") (:age . 37))
And LET uses two-element binding lists: (let ((name "Ada")
(age 37))
...)
Lookup conventions differ as well: (getf plist key)
(gethash key table)
(assoc key alist)
GETF puts the container first; GETHASH and ASSOC put the key first. ASSOC also returns the matching pair, whereas GETF and GETHASH return the value as their primary result.4. What happens at COMPILE-FILE time is arcane and almost impossible to keep straight.
5. Common Lisp often feels designed primarily to implement Common Lisp, rather than to write useful application code. Its equality predicates are a good example: EQ, EQL, EQUAL, and EQUALP give you four fixed bundles of rules organized around Lisp's own representations.
Want arrays compared by content? EQUALP does that, but also makes string comparisons case-insensitive. Want objects compared by their slots? EQUALP does that for DEFSTRUCT instances, but not ordinary CLOS instances. Want to define what equality means for your class? None of these predicates is a generic function you can extend.
Checking something basic like "when do these two values mean the same thing?", requires a separate operation of your own. None of the equality operators do anything close to what someone might actually want, unless they happen to be implementing CL in which case they are exactly what you want.
Comparison EQ EQL EQUAL EQUALP
Lists containing (1 2) NIL NIL T T
List (1 2) versus (1.0 2.0) NIL NIL NIL T
Strings containing "Ada" NIL NIL T T
String "Ada" versus "ADA" NIL NIL NIL T
Same-type DEFSTRUCT instances, identical slots NIL NIL NIL T
Same-class CLOS instances, identical slots NIL NIL NIL NILYou know it's possible to be critical of Israel with every breath, constantly bring it up whenever you can, and not hate Jews.
It's possible never stop talking about gays and how they are destroying society and constantly obsess over homosexuals and what they are up to without being secretly gay.
It's possible. It is possible.
"Having space" is just a consequence of black holes. If you have more information in a volume than can be encoded on its surface in theory, you have enough mass inside the volume to make it a black hole and the event horizon then has enough space to encode the information even if the original surface did not.
The correspondence between information, thermodynamics, and mass that causes black holes to 'make it possible' to holographically encode all the information inside is what makes this theory so tempting. What if everything is information, and black holes aren't an expression of 'too much mass', but rather just a result of 'too much information to store'. This theory, if it existed, would demonstrate a key result of both relativity and quantum theory based on a very simple premise, and suggests it might then be possible to base both General Relativity and Quantum Theory on top of a simpler theory.
> That’s a violation of logic and geometry. It asks us to erase the categorical difference between square meters and cubic meters.
No, that's sheer nonsense.
> There is no negative mass, so you can always infer the one real arrangement of stuff inside from the warping of space-time at the surface of your box.
Positive mass does not make this argument work. Two bodies in GR can have different distributions of mass but identical exterior geometry. A counterexample is two spherically symmetric, uncharged bodies with the same total gravitational mass but different radial density profiles. By Birkhoff’s theorem, their exterior vacuum geometries are identical.
They require government contractors to not participate in certain boycotts, which is completely in line with long standing US policy. Doing otherwise would be insane, the government would be funding both it's own stated objectives and the opposite.
When the shoe is on the other foot you support this behavior. I don't see you crying over half the countries in the middle east forcing every company they work with to boycott Israel.
He is misinformed and intentionally trying to change the subject away from China though, and it worked.
I only replied that bringing up Israel out of nowhere in reply to a discussion about the US government and China is clearly an attempt to change the subject, and making false claims about Jews, especially when they fit the usual Elders of Zion pattern of "Jews control the world so they have different rules" is antisemetic, which it is.
Why don't you use a non throwaway account and stand by your behavior?
Why is this tolerated on HN??