Hacker News new | past | comments | ask | show | jobs | submit | nanna's comments login

Reeks of antisemitic conspiracy theory.

A state actor like Israel with a world class intelligence agency can get inside your WhatsApp group regardless of what Meta wants. Whether through spies, bugged phones of zero days, they will. That's far more plausible than a conspiracy of three American executives who oh just all happen to be Jewish allocating a backdoor.

On that basis alone this should be flagged.

How can you say "Israel has great spies, they can get anywhere" and at the same time say "oh but not the literal Unit 8200 member who actually runs information security"?

I wrote exactly the same thing before reading your comment. I completely agree. For me one of the great things about writing in Emacs is the distinction about my personal draft and my published outuput, which is expressed by the distinction between a 'typewriter' fixed-width font and a beautiful LaTeX processed output. Blurring that distinction produces an anxiety.

Dupe from yesterday (by the same poster? Maybe a bug.): https://news.ycombinator.com/item?id=40037844

I woke up and had groundhog-day vibes :)

Maybe this post got re-upped (?) from a previous submission.

Yes, that's what happened.

Had no idea about that C-u 0 c created an evaluatable function that takes you to a specific info node. Great for building up my own elisp notes.

Implementing the Eisenhower Matrix for the Org Mode agenda:


And how would you know?

Please go and do your devisive and dubious trolling somewhere else.

Not trolling, just a different oppinion than yours. Those do exist.

Live in what sense?

To me Emacs fits the bill, or at least a subset thereof.

With a live programming model: https://en.wikipedia.org/wiki/Live_coding

Pharo (a Smalltalk), is listed in that article as an example of a live programming environment.

Alan Kay is one of the designers of SmallTalk.

Yeah I like Pharo

It would be cool to be able to just click on anything and adjust its code to however you like it. I guess that Smalltalk and its descendants allow this. But so does Emacs. It's not an operating system, but it covers a lot of the use-cases.

You would need live routing of messages. And the ability to reroute, filter, inject messages dynamically into code.

Why must everything be done as a function call? You can’t change anything without recompiling the code.

Today everything is implemented as a function call. Need to send a message? Call a function named “snd_msg” or something.

> Why must everything be done as a function call? You can’t change anything without recompiling the code.

Emacs Lisp supports dynamic binding, so you can dynamically rebind function definitions at runtime.

It's curious how the original 1981 paper [1] on TECO Emacs, written before I was born, describes many qualities I recognize in the ELisp Emacs I grew up on.

Emacs "happens" to be open source ;-), but the paper stresses how the system & language were designed to allow users to mold it at run time without the barrier of recompiling from source, and how empowering users led to better features than "careful design" could have achieved. Selected points I found notable:

- awareness that "An EMACS system actually implements two different languages, the editing language and the programming language". - Editing Language is tweakable (again at run time) by re-binding keys to macros / existing commands / custom commands. This gives agency to users with less programming skill! - Language separation being necessary so that tweaking Editing Language can't break Programming code. - Key bindings are shallow "keyboard sugar" over the concepts of Programming Language. Commands are (almost) regular functions. User can invoke any command by name, bypassing the sugar. - Buffer-local & mode-local bindings. - Commands (and generally as much of the system as possible) implemented in Programming Language which was chosen to be interpreted not compiled, so that users can redefine at run-time and experiment. - "The only way to implement an extensible system using an unsuitable language, is to write an interpreter for a suitable language and then use that one" :-D - "variable [and function] names are retained at run time; they are not lost in compilation"

- Commands are extensively parametrized by variables. User can achieve quite a lot by simply setting [global] variables. - Dynamic not lexical scoping deliberately choosen to make code less encapsulated and more reusable with tweaks. See paper why lexical is worse for dynamic - Unique concept of File/buffer-local variables! Again, if programmer went to the trouble of parametrizing code, maximize the payoff. - Commands and especially compiled code extensively parameterized by calling "Hooks" at interesting points. "These hooks can be thought of as compensating for the fact that some parts of the system are written in assembler language and cannot simply be redefined by the user." <<-- I found this especially thoughtful

- Social dynamics like "library system" for loading extensions written by others. Well, ater Emacs actually lagged behind for decades in ease of obtaining 3rd-party libraries. "too cathedral, not enough bazaar..." Much better now with MELPA, still not as smooth as say VSCode extensions. But I feel a trade-off — VSCode extensions are more "opaque".

[1] https://www.gnu.org/software/emacs/emacs-paper.html

yeah, that's one of the main things people like about emacs

Wonderful as ever.

Kay demonstrates an emulator of Sketchpad. Anyone know if it's been shared anywhere?

Also very curious about this. I’ve been slowly building one myself and would happily give up if another good one already exists. Tried searching the web and can’t find it.

There was a CDClabs github version and the Frank/STEPS code. Contact me, its burried in my 20 TB archive.

CDG Labs. But this is not it: <https://github.com/cdglabs/sketchpad14>

The demo itself is a video of this: https://youtu.be/Vt8jyPqsmxE?t=750 which is a simulation done in the Frank system in the STEPS project.

Ivan Sutherlands sketch pad paper is here: https://dspace.mit.edu/handle/1721.1/14979

A few years ago I taught an introduction to website developmment module at a university where students built jekyll sites. I got them to to host on netlify. Now that I no longer teach at that uni and their email accounts will have expired I'm wondering if there's any way I can contact them to tell them to take their sites off netlify... Disaster if they get hit by charges like this.

At the rate it's going this story will probably reach them without your help.

Not necessarily, the majority of them probably wouldn't have ended up in anything tech related. But they probably did end up back in China, so hopefully it would be hard to demand payment at least?

I think that the distinction makes the code clearer to read. LET tells a future reader that they don't need to bother scanning each variable binding for parent variables, whereas LET* tells them that they do. Seems like the same logic behind having a WHEN and UNLESS as opposed to just an IF, the former meaning that one needn't search for an 'else' block. The LISP family encourage good style.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact