GNU social JP
  • FAQ
  • Login
GNU social JPは日本のGNU socialサーバーです。
Usage/ToS/admin/test/Pleroma FE
  • Public

    • Public
    • Network
    • Groups
    • Featured
    • Popular
    • People

Conversation

Notices

  1. Embed this notice
    Panicz Maciej Godek (paniczgodek@functional.cafe)'s status on Wednesday, 11-Dec-2024 17:33:51 JST Panicz Maciej Godek Panicz Maciej Godek

    Of all the software in the world, #Emacs has been the greatest source of inspiration for #GRASP

    I sometimes try to conclude what exactly Emacs is. As a matter of fact, the accidental interview that I made with Bernard Greenberg earlier this year happened exactly because I was trying to make a youtube video about "the concept of Emacs". I haven't finished the video - and I don't know if I ever will, so I decided to write this post.

    The two obvious non-answers about the essence of Emacs are are "text editor" and "opearting system", and the closest conceptual relatives are Smalltalk virtual machines.

    Emacs didn't begin with Lisp. It began with TECO, and it was MIT students' attempt at creating a working environment that wouldn't take away any power from its users, but that would instead empower them even more.

    The Emacs paper by Richard Stallman refers, among others, to Doug Englebart's NLS/Augment system.

    In either case, it seems that Emacs was as much a social movement as it was a text editor.

    The early offspring of Emacs were Eine (which wasn't Emacs) and Zwei (which was Eine initially) for Lisp Machines and Multics Emacs (which was an Emacs).

    Greenberg told me that he was a very close friend with Daniel Weinreb, and that they were inspiring each other's work. (He also told me he didn't know Richard Stallman very well.)

    In either case, Multics Emacs was the first Emacs to use Lisp, and Stallman loved that idea.

    The only Emacs that I had an opportunity to use was (and constantly is) GNU Emacs, which Stallman took from Gosling and modified. Gosling was a former user of Multics Emacs, and once he was confined to UNIX, he missed it so much that he decided to recreate it.

    Of course, UNIX already had its editor (developed by Bill Joy) which was called "ex", as an extension to the "ed" editor developed by Ken Thompson. There was a way of running it in "visual mode" in video terminals (as opposed to teleltypes) by using the command "vi". I don't know whether Gosling didn't like it, or loved Emacs so much, but he created a crippled implementation of a Lisp-like language called "MockLisp", to mimic some of the capabilities of Multics Emacs.

    (Guy Steele, who originally started the TECO Emacs project, was later serving on a scientific board for Gosling's PhD at CMU)

    This is a very twisted story, and it's hard to get a clear-cut idea of what "the essence of Emacs", so...

    so maybe you can tell me?

    In conversation about 6 months ago from functional.cafe permalink

    Attachments

    1. Domain not in remote thumbnail source whitelist: xcoins.com
      Home
      from super-admin
      Buy Bitcoin instantly using your credit or debit card at Xcoins. You can also buy other cryptocurrencies using bank transfer, Apple Pay & Google Pay.
    • Jeff "never puts away anything, especially oven mitts" Cliff, Bringer of Nightmares 🏴‍☠️🦝🐙 🇱🇧🧯 🇨🇦🐧 likes this.
    • Embed this notice
      Jack Rusher (jack@berlin.social)'s status on Wednesday, 11-Dec-2024 17:33:49 JST Jack Rusher Jack Rusher
      in reply to
      • Jef Poskanzer

      @jef @PaniczGodek [Jef! As another prediluvian, I’m glad to see you here.]

      After 40 years with it, I regard emacs as a programmable interactive environment for implementing (primarily text) workflows. Using it to edit source code, read email, or manage one’s agenda are just applications of that engine. From this perspective, small editors with emacs keybinds (mg/e/&c) lack the Buddha nature.

      In conversation about 6 months ago permalink
      Jeff "never puts away anything, especially oven mitts" Cliff, Bringer of Nightmares 🏴‍☠️🦝🐙 🇱🇧🧯 🇨🇦🐧 likes this.
    • Embed this notice
      Jef Poskanzer (jef@mastodon.social)'s status on Wednesday, 11-Dec-2024 17:33:50 JST Jef Poskanzer Jef Poskanzer
      in reply to

      @PaniczGodek Back in 2022, as a pandemic boredom project, I wrote yet another minimal Emacs: http://acme.com/software/e/

      It implements many of the common Emacs commands. It does not have an extension language. It does let you rebind keys.

      I am still undecided whether it has the true Emacs Nature. Is an extension language necessary?

      In conversation about 6 months ago permalink

      Attachments


      David Wilson repeated this.
    • Embed this notice
      Robert Link (phaedral@mastodon.social)'s status on Thursday, 12-Dec-2024 07:45:29 JST Robert Link Robert Link
      in reply to
      • James Endres Howell

      @james I dig the power of keybindings, and a button is just a button, but I don't know that emacs has a corner on that.

      In conversation about 6 months ago permalink
    • Embed this notice
      James Endres Howell (james@social.howellcloud.org)'s status on Thursday, 12-Dec-2024 07:45:30 JST James Endres Howell James Endres Howell
      in reply to

      A close friend of mine in the late 1980s was a serious wizard. He saw me struggling with something and said "Why don't you use Emacs?" And I was like, What's Emacs?

      "Every key calls a function. Letter keys are bound to the function that inserts that letter, but you can bind any key to any function. And you can write functions to do whatever you want."

      Immediately I saw the essence of Emacs.

      #emacs

      In conversation about 6 months ago permalink
    • Embed this notice
      James Endres Howell (james@social.howellcloud.org)'s status on Friday, 13-Dec-2024 06:08:23 JST James Endres Howell James Endres Howell
      in reply to
      • Robert Link

      @phaedral It was, and is, the ethic of maximum user control.

      In conversation about 6 months ago permalink
    • Embed this notice
      Jeff "never puts away anything, especially oven mitts" Cliff, Bringer of Nightmares 🏴‍☠️🦝🐙 🇱🇧🧯 🇨🇦🐧 (jeffcliff@shitposter.world)'s status on Saturday, 04-Jan-2025 13:34:16 JST Jeff "never puts away anything, especially oven mitts" Cliff,  Bringer of Nightmares 🏴‍☠️🦝🐙 🇱🇧🧯 🇨🇦🐧 Jeff "never puts away anything, especially oven mitts" Cliff, Bringer of Nightmares 🏴‍☠️🦝🐙 🇱🇧🧯 🇨🇦🐧
      in reply to
      • Jef Poskanzer
      @jef @PaniczGodek but what license is e? GPLv3+ is an important feature of GNU emacs
      yours seems to be default-proprietary shared source??
      In conversation about 6 months ago permalink
    • Embed this notice
      Ramin Honary (ramin_hal9001@fe.disroot.org)'s status on Saturday, 04-Jan-2025 13:34:58 JST Ramin Honary Ramin Honary
      in reply to
      • Jef Poskanzer
      • Jack Rusher

      the closest conceptual relatives are SmallTalk virtual machines.

      After 40 years with it, I regard emacs as a programmable interactive environment for implementing (primarily text) workflows.

      @PaniczGodek Yes, I agree with these two descriptions the most. I think of Emacs as a programmable “app platform,” which would also describe SmallTalk virtual machines just as well. And a programmable app platform could also be described as an interactive environment for implementing (primarily text) workflows.

      The web is another similar app platform, though it is not as programmable, even though most browsers nowadays ship with a JavaScript REPL and allow you to store files in the browser’s own storage system. The lack of direct access to a local filesystem makes the web browser a lot less useful than Emacs, though the web certainly provides a much larger set of useful features out of the box compared to Emacs, especially multimedia, and 3D graphics rendering.

      And yes, I believe “the concept of Emacs“ requires a programming language for extending it, otherwise it is not an app platform.

      @jack @jef

      #tech #software #FLOSS #GNU #Emacs

      In conversation about 6 months ago permalink
      Jeff "never puts away anything, especially oven mitts" Cliff, Bringer of Nightmares 🏴‍☠️🦝🐙 🇱🇧🧯 🇨🇦🐧 likes this.
    • Embed this notice
      Panicz Maciej Godek (paniczgodek@functional.cafe)'s status on Saturday, 04-Jan-2025 13:34:59 JST Panicz Maciej Godek Panicz Maciej Godek
      in reply to
      • Jef Poskanzer
      • Jack Rusher

      @jack

      This sounds like perhaps some programming language akin to natural language (e.g. Inform 7 or "Plain English") or maybe a multi-lingual environment could be a better fit for "the concept of Emacs" than Emacs Lisp?

      (I mean, Emacs certainly is a complex multi-dimensional beast and there isn't a single concept of it, but maybe that would be an interesting experiment)

      @jef

      In conversation about 6 months ago permalink
    • Embed this notice
      Jeff "never puts away anything, especially oven mitts" Cliff, Bringer of Nightmares 🏴‍☠️🦝🐙 🇱🇧🧯 🇨🇦🐧 (jeffcliff@shitposter.world)'s status on Saturday, 04-Jan-2025 13:36:23 JST Jeff "never puts away anything, especially oven mitts" Cliff,  Bringer of Nightmares 🏴‍☠️🦝🐙 🇱🇧🧯 🇨🇦🐧 Jeff "never puts away anything, especially oven mitts" Cliff, Bringer of Nightmares 🏴‍☠️🦝🐙 🇱🇧🧯 🇨🇦🐧
      in reply to
      • Jef Poskanzer
      • Jeff "never puts away anything, especially oven mitts" Cliff, Bringer of Nightmares 🏴‍☠️🦝🐙 🇱🇧🧯 🇨🇦🐧
      @jef @PaniczGodek ie would you accept a patch adding AGPL3+ to this?
      In conversation about 6 months ago permalink

Feeds

  • Activity Streams
  • RSS 2.0
  • Atom
  • Help
  • About
  • FAQ
  • TOS
  • Privacy
  • Source
  • Version
  • Contact

GNU social JP is a social network, courtesy of GNU social JP管理人. It runs on GNU social, version 2.0.2-dev, available under the GNU Affero General Public License.

Creative Commons Attribution 3.0 All GNU social JP content and data are available under the Creative Commons Attribution 3.0 license.