summaryrefslogblamecommitdiffstats
path: root/2023/talks/devel.md
blob: 6dd8bd2ad51299fe7afcea687d1013eceb85137c (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11










                                                                                                    

                                          
                               




                                                                                                                                                          





                                                                                                                                                                                                     




                                                                     

                                                                     





                                                                       
                                                                     

                                                                      

                                                                       









                                                                        
                                                                       

















                                                                        
                                                                

                                                                                                          
                                                                    



















                                                                                                                                                   
                                                  
                                        
                           

                                                                     
                                                                      


                                                                  





                                                             
[[!meta title="Emacs development updates"]]
[[!meta copyright="Copyright © 2023 John Wiegley"]]
[[!inline pages="internal(2023/info/devel-nav)" raw="yes"]]

<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
<!-- You can manually edit this file to update the abstract, add links, etc. --->


# Emacs development updates
John Wiegley (he/him)

[[!template id="help"
summary="main talk does not have captions"
volunteer="jchelary 2024-01-10"
tags="help_with_main_captions"
message="""This talk does not have captions yet.
Would you like to help [caption this talk](/captioning)?
You may be able to start with these [autogenerated captions](/2023/captions/emacsconf-2023-devel--emacs-development-updates--john-wiegley--main.vtt)."""]]

[[!inline pages="internal(2023/info/devel-before)" raw="yes"]]

In this talk, John Wiegley will briefly summarize important developments on the road to Emacs 30. He will not be able to answer questions right now, but you can post questions in the pad and he can
follow up after the event.


# Discussion

## Questions and answers

-   Q: Which changes in recent Emacs releases are you enjoying using?
    -   A: I have really liked the visual-line-mode. I'm not sure how
        recent that is. Some of these features I've discovered quite
        late. The new display-line-number-mode, much faster. Native
        compilation. I do a lot of stuff in Emacs. Native compilation
        has brought the experience much closer to a modern app.
-   Q: What do you think the future in the area of artificial
    intelligence from the developer point of view?
    -   A: I do use xinside Emacs quite a bit when doing development in
        other languages. Ex: working on ledger, haven't done a lot of
        C++ lately. Ex: comparing strings only up to the length of the
        shortest string. I think in terms of developer assistance, not
        having to keep all the libraries in memory... Like Rosetta Code
        (<https://rosettacode.org/wiki/Rosetta_Code>). That's a great
        database - code in different languages.
-   Q: What is the future of Emacs on macOS? I understand that there are
    too few developers for the platform. Is that still true?
    -   A: I do not know exactly what the state of Emacs development on
        macOS is, but I have never suffered in any way, using Emacs on
        the Mac for decades.
-   Q:Why aren't you contributing to Emacs anymore? Lack of time, I
    guess?
    -   A: Lack of free time
    -   Draft? (story about describing what he wanted, and then someone
        ran it through ChatGPT and sent him Emacs Lisp code) <- ChatGPT
        example, may increase the efficiency of my free time
    -   What was the language that you code in now?
-   Q: One of the tricky things about running emacs on android is do you
    use anything that requires extra packages ex, pdf-tools with
    mupdf? - org-roam with a database - playing music or video with mpd
    or mpv and bonga, elfeed. Do you run emacs turmux, Emacs apk, emacs
    in virtaul machine??? This is also the case on Emacs for windows but
    to a lesser degree 
    -   A: (zaeph) We'll put a pin in this for Stefan afterwards.
-   Q: Will AUCTeX some day become the default TeX mode in Emacs? And,
    if so, when? :)
    -   A: The downside of moving to core is that your release cycle is
        slowed down because you have to go through emacs-devel and the
        devel team. So it seems to be up to AUCTeX developers. This can
        be troublesome if a package develops rapidly.
-   Q: Do you use other IDEs for theorem proving work, notably VS Code
    for LEAN? Which languages and provers can/do you use Emacs for?
    -   A: I have always used Emacs. 
-   Q: Can we see that AI-generated "Drafts"-like code anywhere?
    -   A:
	<https://github.com/jwiegley/dot-emacs/commit/ab27998dee4cb92c6f660b434b32582e3d2842f9#r113795175>
-   Q: Wait, just a quick search over "Draft". Does that mean you're
    not using Org anymore?
    -   okay, I am good now :)
-   Q: Speaking of which, do you ever hit the walls in terms of
    multithreading issues, and if so when doing what / in what cases?
- Q: was [perl-mode] just abandonned or did cperl bring a new design ?
  - Not the speaker: I think someone just started a separate cperl-mode (based on c-mode) and many of us found it worked better, so switched to it.

## Notes

-   Emacs 29 has been quite a success so far, 29.2 to be released soon
-   Thinking about starting Emacs 30 release cycle (emacs-30 will be cut
    and development will be frozen with only bugfixes going in); could
    take some time
-   Not a huge number of changing features, but still some interesting
    things
-   Android support - native Emacs on a tablet, etc.
-   Much better support for touchscreen devices (laptops and tablets) 
    Interesting, the original design of Hyperbole anticipated iPad-like
    devices with each node of information represented by a rounded
    square and interconnected in a knowledge graph like Org-roam does,
    so maybe we'll do some work in that direction.
-   There will be some support for LL(?)
-   perl-mode -> cperl-mode
-   byte-compiler will warn about more questionable constructs: empty
    macro bodies, etc.
-   Stefan Kangas is a new co-maintainer (and he'll be giving the next
    talk live)
-   Thanks John for all the news on Emacs and informative answers.


[[!inline pages="internal(2023/info/devel-after)" raw="yes"]]

[[!inline pages="internal(2023/info/devel-nav)" raw="yes"]]