• Can we have a vi, please?

    From Anton Shepelev@ant@tilde.culb to tilde.club on Thu Oct 3 00:52:36 2024
    Hello,
    may I ask the admnistrators to install a real `vi' editor, e.g. nex/nvi:

    <https://sites.google.com/a/bostic.com/keithbostic/the-berkeley-vi-editor-home-page>
    <https://repo.or.cz/nvi.git>

    which is a very thorough re-implementation of the original.
    I am trying to learn from the basics, and `vim' is simly too large for me,
    and it is not really compatible with `vi' even in compatibility mode
    (-C).

    Most vi clones/reimplementations being a fraction of the size of vim,
    they will not add a noticeable burden on the system resources. The `vi'
    command may be redefined to start `vi' instead of `vim', or kept as is,
    and then `nvi' will be used unless the user redefine it in his profile.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From yeti@yeti@tilde.institute to tilde.club on Wed Oct 2 23:50:06 2024
    Can you CC: this as mail to the admins (deepend & ben)?
    I don't think I've seen them write here.
    --
    1. Hitchhiker 17: (25) "Shhh!" said Zaphod. "There's absolutely nothing
    to be worried about."
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From Anton Shepelev@ant@tilde.culb to tilde.club on Thu Oct 3 03:09:10 2024
    yeti <yeti@tilde.institute> wrote:

    Can you CC: this as mail to the admins (deepend & ben)?
    I don't think I've seen them write here.

    I can & I will.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From yeti@yeti@tilde.institute to tilde.club on Thu Oct 3 01:18:34 2024
    Anton Shepelev <ant@tilde.culb> wrote:

    yeti <yeti@tilde.institute> wrote:

    Can you CC: this as mail to the admins (deepend & ben)?
    I don't think I've seen them write here.

    I can & I will.

    Perfect! \o/
    --
    I'm nonbinary. I use Emacs and Nvi.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From Patricia Ferreira@pferreira@example.com to tilde.club on Sat Oct 12 18:46:09 2024
    yeti <yeti@tilde.institute> writes:

    [...]

    Perfect! \o/

    --
    I'm nonbinary. I use Emacs and Nvi.

    Traitor! \o/
    --
    :P
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From Anton Shepelev@ant@tilde.culb to tilde.club on Sun Oct 13 02:50:27 2024
    Patricia Ferreira <pferreira@example.com> wrote:
    yeti <yeti@tilde.institute> writes:

    [...]

    Perfect! \o/

    --
    I'm nonbinary. I use Emacs and Nvi.

    Traitor! \o/

    Double-crosser. By the way, nvi seems rather poorly supported, in that
    its build instructions are broken as well as some links in text files:

    <http://repo.or.cz/nvi.git>

    ~deepend tried and failed to build it, and I did, too. Its multibyte
    form nvi2 seems better maintained, but it still depends on some
    BSD-specific facilties, such as BerkleyDB, and sets an antiexample
    of buildiong a simple progrmam with comples tools, CMake /and/ ninja:

    <https://github.com/lichray/nvi2>
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From Anton Shepelev@ant@tilde.culb to tilde.club on Sun Oct 13 03:03:31 2024
    Anton Shepelev <ant@tilde.culb> wrote:
    yeti <yeti@tilde.institute> wrote:

    Can you CC: this as mail to the admins (deepend & ben)?
    I don't think I've seen them write here.

    I can & I will.

    Thanks to ~deepend, Traditional vi (https://ex-vi.sourceforge.net/) is
    now available in ~club:

    Binary: /usr/archaic/bin/
    Manual: /usr/archaic/share/man/man/man1/

    In order to read the man pages, invoke:

    MANPATH="/usr/archaic/share/man/man:$MANPATH" man vi

    ~deepend will appreciate advice on how to register them properly and
    without confict with Vim. I suggested putting vi's manpages under
    some special section, such as `1x' (already exists), or `archaic'.

    Traditional vi uses a plain hand-written makefile and builds fast and
    smooth. The only alteration required was to link it against a curses
    library, because modern Linuxes do not provide /etc/termcap . Unicode
    support is the cherry on the cake.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From yeti@yeti@tilde.institute to tilde.club on Sun Oct 13 01:33:22 2024
    Patricia Ferreira <pferreira@example.com> wrote:

    yeti <yeti@tilde.institute> writes:

    [...]

    Perfect! \o/

    --
    I'm nonbinary. I use Emacs and Nvi.

    Traitor! \o/

    For some years I had a job where I needed to be flexible about what was installed and what not. The clients' systems were very diverse, but I
    could bet on VI being installed.

    Being able to survive with ED and VI for basic tasks makes one sleep
    better than relying on finding Emacs or being able to "tramp" onto the
    target system.

    But sure I wouldn't like to write my notes about code without org-babel.

    ...and on 9front I prefer ED! Take that, ACME!!!
    --
    C-x C-c

    Oops!
    Wrong window!
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From yeti@yeti@tilde.institute to tilde.club on Sun Oct 13 07:45:45 2024
    Anton Shepelev <ant@tilde.culb> wrote:

    Thanks to ~deepend, Traditional vi (https://ex-vi.sourceforge.net/) is
    now available in ~club:

    Binary: /usr/archaic/bin/
    Manual: /usr/archaic/share/man/man/man1/

    In order to read the man pages, invoke:

    MANPATH="/usr/archaic/share/man/man:$MANPATH" man vi


    * MANPATH, manpath and Co

    I'd leave it to the users whether they want to add those directories to
    PATH (and MANPATH) in their dot-files.

    Seems setting MANPATH indeed is needed on NetBSD, while on Debian the
    man command looks for '.../man' and '.../share/man' in the neighbourhood
    of '.../bin' directories mentioned in PATH automagically.

    I'm not sure I like that, but sometimes I dare^Wprefer to be lazy. On
    my Debian-ish laptop with some bonsais in '/opt' I only add stuff to
    PATH (and LD_LIBRARY_PATH if needed) in my dot-files.

    ------------------------------------------------------------------------
    $ echo $MANPATH

    $ ## ==> empty.
    $ echo $PATH /opt/uxn/bin:/opt/tcc/bin:/opt/scc/bin:/opt/propellertools/bin:/opt/pcc/bin:/opt/naken_asm/bin:/opt/micropython/bin:/opt/gambit/bin:/opt/elinks/bin:/opt/drawterm/bin:/opt/dillo/bin:/opt/bst/bin:/opt/bacon/bin:/opt/awka/bin:/opt/ack/bin:/home/yeti/bin:/home/yeti/Sync/bin:/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games
    $ manpath /opt/tcc/share/man:/opt/scc/share/man:/opt/pcc/share/man:/opt/gambit/share/man:/opt/elinks/share/man:/opt/drawterm/share/man:/opt/dillo/share/man:/opt/bacon/share/man:/opt/awka/man:/opt/awka/share/man:/opt/ack/share/man:/usr/local/man:/usr/local/share/man:/usr/share/man
    ------------------------------------------------------------------------


    * (File-)Name Conflicts

    How name conflicts are handled is a different layer of this.

    My solutions ordered by preference:

    + Remove VIM. ;-P

    + Put "the real thing" in front of (MAN)PATH and just forget about VIM.
    'man vim' *has* to work and typing vi should launch the original
    unless not being installed. In that case using VIM as fallback for VI
    may be OK-ish. If VIM's man page isn't available as 'vim.1', send
    that as bug report to the maintainers of the VIM package(s).


    * Similar Problems (We Should Have Learned From)

    I've a similar problem with GAWK users producing '*.awk' scripts full of GAWKisms and additionally GAWK isn't even 100% AWK compatible.

    That sucks like the era when early Linux user-land used BASH as default
    shell and every other '*.sh' script was full of BASHisms.


    * TL;DR

    I've no idea, just some strong opinions. ;-P
    --
    4. Hitchhiker 11:
    (72) "Watch the road!'' she yelped.
    (73) "Shit!"
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From Anton Shepelev@ant@tilde.culb to tilde.club on Sun Oct 13 20:55:05 2024
    yeti <yeti@tilde.institute> wrote:
    Anton Shepelev <ant@tilde.culb> wrote:

    In order to read the man pages, invoke:

    MANPATH="/usr/archaic/share/man/man:$MANPATH" man vi


    * MANPATH, manpath and Co

    I'd leave it to the users whether they want to add those directories to
    PATH (and MANPATH) in their dot-files.

    My idea was to move the vi manpages under the standard path but a
    non-standard section, such 1x. Why not?

    Seems setting MANPATH indeed is needed on NetBSD, while on Debian the
    man command looks for '.../man' and '.../share/man' in the neighbourhood
    of '.../bin' directories mentioned in PATH automagically.

    I'm not sure I like that, but sometimes I dare^Wprefer to be lazy. On

    Indeed, straightforward uncoditional behavior is good. You text smells
    of vi...

    my Debian-ish laptop with some bonsais in '/opt' I only add stuff to
    PATH (and LD_LIBRARY_PATH if needed) in my dot-files.

    ------------------------------------------------------------------------
    $ echo $MANPATH

    $ ## ==> empty.
    $ echo $PATH /opt/uxn/bin:/opt/tcc/bin:/opt/scc/bin:/opt/propellertools/bin:/opt/pcc/bin:/opt/naken_asm/bin:/opt/micropython/bin:/opt/gambit/bin:/opt/elinks/bin:/opt/drawterm/bin:/opt/dillo/bin:/opt/bst/bin:/opt/bacon/bin:/opt/awka/bin:/opt/ack/bin:/home/yeti/bin:/home/yeti/Sync/bin:/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games
    $ manpath /opt/tcc/share/man:/opt/scc/share/man:/opt/pcc/share/man:/opt/gambit/share/man:/opt/elinks/share/man:/opt/drawterm/share/man:/opt/dillo/share/man:/opt/bacon/share/man:/opt/awka/man:/opt/awka/share/man:/opt/ack/share/man:/usr/local/man:/usr/local/share/man:/usr/share/man
    ------------------------------------------------------------------------

    * (File-)Name Conflicts

    How name conflicts are handled is a different layer of this.

    My solutions ordered by preference:

    + Remove VIM. ;-P

    We cannot expect ~deepend to do it on the ~club machine, can we?
    Reading the vi manual with [man 1x vi] seems sufficient to me...

    + Put "the real thing" in front of (MAN)PATH and just forget about VIM.
    'man vim' *has* to work and typing vi should launch the original
    unless not being installed. In that case using VIM as fallback for VI
    may be OK-ish. If VIM's man page isn't available as 'vim.1', send
    that as bug report to the maintainers of the VIM package(s).

    Vim is perfecly availaable under its real name, vim, and its
    appropriation of the `vi' name is unnecessary and, I hope, optional.

    * Similar Problems (We Should Have Learned From)

    I've a similar problem with GAWK users producing '*.awk' scripts full of GAWKisms and additionally GAWK isn't even 100% AWK compatible.

    Yeah, righ. And GCC users (call 'em that) prdocing lots of .c files
    full of GCC-isms, thanks to the non-conservative defaults. Even with
    -std=c89 is requires -pedantic to behave.

    That sucks like the era when early Linux user-land used BASH as default
    shell and every other '*.sh' script was full of BASHisms.

    What's the sittation now? Is not `bash' the default again, and so default
    that I have trouble finding a true `sh', except by wheelding `bash' to
    behave like `sh'.

    * TL;DR

    I've no idea, just some strong opinions. ;-P

    Leave the weak ambivalent unemotional opinions for Wikipedia and GPT.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From yeti@yeti@tilde.institute to tilde.club on Mon Oct 14 04:27:44 2024
    Anton Shepelev <ant@tilde.culb> wrote:

    yeti <yeti@tilde.institute> wrote:

    Vim is perfecly availaable under its real name, vim, and its
    appropriation of the `vi' name is unnecessary and, I hope, optional.

    The same should apply to the man pages and IMO that would be a valid
    solution. Or am I missing something?

    Just getting my 1st caffeïne, so I might see what I'm missing with a
    delay.

    * Similar Problems (We Should Have Learned From)

    I've a similar problem with GAWK users producing '*.awk' scripts full of
    GAWKisms and additionally GAWK isn't even 100% AWK compatible.

    Yeah, righ. And GCC users (call 'em that) prdocing lots of .c files
    full of GCC-isms, thanks to the non-conservative defaults. Even with -std=c89 is requires -pedantic to behave.

    Definitely!

    We now have a GNU locked in syndrome.

    The GNU project seems to do exactly what the FOSS world accused others
    to do:

    / Embrace, Extend, Exterminate, \
    \ Exterminate, Exterminate, ... /
    /
    ___
    /___\=<o
    [===]
    [III]=(
    |___|
    _ _ _ |___| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _


    Try building e.g. Emacs with a "normal" C compiler. *sigh!*

    Or try building GCC4.x or older with a current GCC. I've lost access to
    some micro-controllers' GCC based toolchains on today's systems, because
    I cannot get them built any more. Ok, I have enough old stuff here that
    could run e.g. Debian6 and that would fit again. But does it really
    need to be that way?

    That sucks like the era when early Linux user-land used BASH as
    default shell and every other '*.sh' script was full of BASHisms.

    What's the sittation now? Is not `bash' the default again, and so
    default that I have trouble finding a true `sh', except by wheelding
    `bash' to behave like `sh'.

    Users naming BASH scripts '*.sh' are one problem, but it was even worse:
    Those days BASH was the only shell, so the system (init) scripts were
    infected with lots of BASHisms. Now there are ASH, DASH and more
    alternatives for keeping BASH away in that area.
    --
    1. Hitchhiker 13: (17) "Funny," he intoned funerally, "how just when you
    think life can't possibly get any worse it suddenly does."
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From Anton Shepelev@ant@tilde.culb to tilde.club on Tue Oct 15 01:08:16 2024
    yeti <yeti@tilde.institute> wrote:
    Anton Shepelev <ant@tilde.culb> wrote:

    yeti <yeti@tilde.institute> wrote:

    Vim is perfecly availaable under its real name, vim, and its
    appropriation of the `vi' name is unnecessary and, I hope, optional.

    The same should apply to the man pages and IMO that would be a valid >solution. Or am I missing something?

    Backwards compatiblity, mayhap, in order that existing users that have
    invoked Vim as `vi' for years shall notice no change. Not all of them
    are ready to retrograde their text editing by four decades. I suppse
    this is ~deepend's concern.

    Just getting my 1st caffe??ne, so I might see what I'm missing with a
    delay.

    I drink coffee not on reagular basis, but as a treat -- hand-ground, and brewed. When at the office, we will take an alcohole, burner, jezse,
    grounds, water, and go down and around the building to brew some:

    <https://i.postimg.cc/CwKMKXW5/image.png>

    * Similar Problems (We Should Have Learned From)

    I've a similar problem with GAWK users producing '*.awk' scripts full of >>> GAWKisms and additionally GAWK isn't even 100% AWK compatible.

    Such is the general attitude, whereas I consider this... not beautiful,
    even if there are not negative consequesces.

    We now have a GNU locked in syndrome.

    The GNU project seems to do exactly what the FOSS world accused others
    to do:

    One can use other of doing, and encourage other to do, and your phrase
    is a funny fusion of the two. (sorry, I could not help it).

    / Embrace, Extend, Exterminate, \
    \ Exterminate, Exterminate, ... /
    /

    And alghough users are free to use plain-vanilla-Jane subsets of
    features, the wrong (that is, non-conservative) defauls are the
    main vector of the propagation of the phenomenon.

    ___
    /___\=<o
    [===]
    [III]=(
    |___|
    _ _ _ |___| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

    A siege tower?

    Try building e.g. Emacs with a "normal" C compiler. *sigh!*

    Or try building GCC4.x or older with a current GCC. I've lost access to
    some micro-controllers' GCC based toolchains on today's systems, because
    I cannot get them built any more. Ok, I have enough old stuff here that >could run e.g. Debian6 and that would fit again. But does it really
    need to be that way?

    No, it defies the benefit of C as a very portable language, and the
    freedom to use /any/ C compiler.

    That sucks like the era when early Linux user-land used BASH as
    default shell and every other '*.sh' script was full of BASHisms.

    That was not early enough for BASH not to have existed...

    Users naming BASH scripts '*.sh' are one problem, but it was even worse:

    Not only users, I fear...

    Those days BASH was the only shell, so the system (init) scripts were >infected with lots of BASHisms. Now there are ASH, DASH and more >alternatives for keeping BASH away in that area.

    DASH to the resque.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From yeti@yeti@tilde.institute to tilde.club on Tue Oct 15 05:51:26 2024
    Anton Shepelev <ant@tilde.culb> wrote:

    yeti <yeti@tilde.institute> wrote:
    Anton Shepelev <ant@tilde.culb> wrote:
    yeti <yeti@tilde.institute> wrote:

    Vim is perfecly availaable under its real name, vim, and its
    appropriation of the `vi' name is unnecessary and, I hope, optional.

    The same should apply to the man pages and IMO that would be a valid >>solution. Or am I missing something?

    Backwards compatiblity, mayhap, in order that existing users that have invoked Vim as `vi' for years shall notice no change. Not all of them
    are ready to retrograde their text editing by four decades. I suppse
    this is ~deepend's concern.

    Ok, then the bonsai in '/usr/archaic' or a similar tree in '/opt'
    holding ye olden 'vi' would be no change for the users who change
    nothing while the ones putting that in front of (MAN)PATH would get the
    real thing as default.

    Just getting my 1st caffe??ne, so I might see what I'm missing with a >>delay.

    I drink coffee not on reagular basis, but as a treat -- hand-ground, and brewed. When at the office, we will take an alcohole, burner, jezse, grounds, water, and go down and around the building to brew some:

    <https://i.postimg.cc/CwKMKXW5/image.png>

    ;-)

    I'm using pure caffeine and mix it into whatever I like, which in most
    cases is tea. Often I do not use it for days, but when I smell migraine
    in the bio weather, it helps a lot to avoid more complex pharmaceutic
    chemicals against those attacks. Comments about an under-caffeinated
    status in most cases are just silly excuses (or a running gag) for
    whatever just went wrong. E.g.: I often sit in front of the screen far
    too fast after opening the eyes.

    * Similar Problems (We Should Have Learned From)

    I've a similar problem with GAWK users producing '*.awk' scripts
    full of GAWKisms and additionally GAWK isn't even 100% AWK
    compatible.

    Such is the general attitude, whereas I consider this... not beautiful,
    even if there are not negative consequesces.

    I've not kept notes, but I remember discussions in AWK's IRC channel
    about cases where plain AWK code behaves strange in GAWK. That just
    adds to the reasons that GAWK should be considered a different
    incompatible language.

    We now have a GNU locked in syndrome.

    The GNU project seems to do exactly what the FOSS world accused others
    to do:

    One can use other of doing, and encourage other to do, and your phrase
    is a funny fusion of the two. (sorry, I could not help it).

    / Embrace, Extend, Exterminate, \
    \ Exterminate, Exterminate, ... /
    /
    ___
    /___\=<o
    [===]
    [III]=(
    |___|
    _ _ _ |___| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

    A siege tower?

    SciFi stuff ...

    <https://en.wikipedia.org/wiki/Dalek> <https://en.wikipedia.org/wiki/History_of_the_Daleks>

    The old ones had, depending on the view angle, a less truncated cone
    like base ...

    <https://static.wikia.nocookie.net/tardis/images/3/3e/Daleks301.jpg/revision/latest?cb=20060901190633>

    ... and because using "/\" would have made it too wide, I decided to
    "draw" it cylindrical instead.

    (((... my Emacs & GCC tears removed ...)))
    But does it really need to be that way?

    No, it defies the benefit of C as a very portable language, and the
    freedom to use /any/ C compiler.

    Yip. I started using K&R-C on m68000 and apart of different views about
    the default integer size I could get my code without problems built with
    4 different compilers. Just some IFDEFs to use BYTE, WORD and LONG (as
    I was used from 68k assembler as terminology) and the universal macro
    assembler named C was happy. My fun with C has shrunk a lot over the
    last decades. :.( Let's blame it on the GNUs.

    It still may be possible not to use GCCisms, but lots of software does
    it and some other compilers (LLVM/CLang) are adopting them to keep a
    chance on "the market". Others (TinyCC, PCC) only adopt some GCCisms.

    Ok. I'd jump for joy if "defer" would show up in all C compilers.
    That's really help code readability. No evolution is not my demand.
    --
    Curiosity may kill a cat, but it keeps a yeti alive.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From Anton Shepelev@ant@tilde.culb to tilde.club on Tue Oct 15 14:45:07 2024
    yeti <yeti@tilde.institute> wrote:
    Anton Shepelev <ant@tilde.culb> wrote:

    yeti <yeti@tilde.institute> wrote:
    Anton Shepelev <ant@tilde.culb> wrote:
    yeti <yeti@tilde.institute> wrote:

    Vim is perfecly availaable under its real name, vim, and its
    appropriation of the `vi' name is unnecessary and, I hope, optional.

    The same should apply to the man pages and IMO that would be a valid >>>solution. Or am I missing something?

    Backwards compatiblity, mayhap, in order that existing users that have
    invoked Vim as `vi' for years shall notice no change. Not all of them
    are ready to retrograde their text editing by four decades. I suppse
    this is ~deepend's concern.

    Ok, then the bonsai in '/usr/archaic' or a similar tree in '/opt'
    holding ye olden 'vi' would be no change for the users who change
    nothing while the ones putting that in front of (MAN)PATH would get the
    real thing as default.

    Right, it takes changing two environment variables: PATH and MANPATH.

    I'm using pure caffeine and mix it into whatever I like, which in most
    cases is tea.

    Tea -- especially with a low degree of fermentation (bai hao yin zhen)
    -- has caffeine of its own. Is it safe to add more, what with the
    saturatrion of caffeince receptors?

    Often I do not use it for days, but when I smell migraine
    in the bio weather, it helps a lot to avoid more complex pharmaceutic >chemicals against those attacks.

    Once I smell it, I can't avoid it, but I have learned that good sleep,
    lots of walking or exercise outside, regular sit-ups and push-ups, and
    cold or contrast showers or baths help prevent it altogether, supposedly
    by improving the tone of blood vessels.

    Comments about an under-caffeinated status in most cases are just silly >excuses (or a running gag) for whatever just went wrong. E.g.: I often
    sit in front of the screen far too fast after opening the eyes.

    That's how I understood you, but wanted to comment on a tangent.

    I've not kept notes, but I remember discussions in AWK's IRC channel
    about cases where plain AWK code behaves strange in GAWK. That just
    adds to the reasons that GAWK should be considered a different
    incompatible language.

    I don't think, however, it can be so bad as not with an enoteric set of
    options to behave like AWK. And even if if can't, I am sure the
    maintainer will consider this as a bug. I am accustomed to a lower-case spelling of command-line programs -- the way they are invoked and named
    in the man pages, additionally in italic. Is it from some alternative convention or personal preference that you capitalise AWK, BASH, &c?

    / Embrace, Extend, Exterminate, \
    \ Exterminate, Exterminate, ... /
    /
    ___
    /___\=<o
    [===]
    [III]=(
    |___|
    _ _ _ |___| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

    A siege tower?

    SciFi stuff ...

    <https://en.wikipedia.org/wiki/Dalek> ><https://en.wikipedia.org/wiki/History_of_the_Daleks>

    The old ones had, depending on the view angle, a less truncated cone
    like base ...

    I would have recognised it had I known it. Good work, actually!

    <https://static.wikia.nocookie.net/tardis/images/3/3e/Daleks301.jpg/revision/latest?cb=20060901190633>

    The weird aestheics of early sci-fi TV-series...

    But does it really need to be that way?

    No, it defies the benefit of C as a very portable language, and the
    freedom to use /any/ C compiler.

    Yip. I started using K&R-C on m68000 and apart of different views about
    the default integer size I could get my code without problems built with
    4 different compilers. Just some IFDEFs to use BYTE, WORD and LONG (as
    I was used from 68k assembler as terminology) and the universal macro >assembler named C was happy. My fun with C has shrunk a lot over the
    last decades. :.( Let's blame it on the GNUs.

    The /final/ decision and responsibility is with the programmer choosing
    the feature- and option set.

    It still may be possible not to use GCCisms, but lots of software does
    it and some other compilers (LLVM/CLang) are adopting them to keep a
    chance on "the market".

    As an alternative to the market, we not have "the market" of Free
    software...

    Others (TinyCC, PCC) only adopt some GCCisms.

    If TinyCC is Tiny C Compiler, then it does not seem to support GCC-isms:

    <https://www.bellard.org/tcc/>

    Ok. I'd jump for joy if "defer" would show up in all C compilers.
    That's really help code readability. No evolution is not my demand.

    Well, `defer' is kind of magick, when the code behave in a
    non-mechanical manner, doing exactly what is written and at the moment execution reaches that line. I think it part of C's philosophy, for
    which reason it retains `goto', by the way. Perhaps you would like C3
    (if you don't already): <https://c3-lang.org/> ? It has `defer', and consequently no `goto'. There is also Hare: <https://harelang.org/> ,
    with deferral and no `goto'.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From yeti@yeti@tilde.institute to tilde.club on Tue Oct 15 13:22:38 2024
    Anton Shepelev <ant@tilde.culb> wrote:

    yeti <yeti@tilde.institute> wrote:

    I am accustomed to a lower-case spelling of command-line programs --
    the way they are invoked and named in the man pages, additionally in
    italic. Is it from some alternative convention or personal preference
    that you capitalise AWK, BASH, &c?

    Confusion. Too many standards[0]. As commands I'd sure use the exact
    letters and cases that would be correct in the command line, sometimes
    in some quotes and there the confusion explodes. I think `x´ would need Unicode, `x' looks asymmetric and therefor ugly, "x" is better saved for quoting text, ... and when I want to use their name and not the command
    some are abbreviations, others are common words, so some would be all
    caps "naturally", others would need only to start with one, ... then
    using all caps in all cases just seemed easier.

    [0]: <https://xkcd.com/927/>

    I'll just try to use Markdown's `...` often enough to get it into my
    muscle memory, but the confusion about the names still is a problem[1].

    [1]: And what's the name of `dd`?
    (Solution: "pbaireg naq pbcl")
    Moooom!?!?! Where is the aspirin?


    If TinyCC is Tiny C Compiler, then it does not seem to support GCC-isms:

    <https://www.bellard.org/tcc/>

    That's the old original one. The active code base lives at <https://repo.or.cz/w/tinycc.git> now and I might have misinterpreted
    some comments about GCC in their mailing-list. Maybe they only meant
    being compatible with GCC's command line options.


    Ok. I'd jump for joy if "defer" would show up in all C compilers.
    That's really help code readability. No evolution is not my demand.

    Well, `defer' is kind of magick, when the code behave in a
    non-mechanical manner, doing exactly what is written and at the moment execution reaches that line.

    Adding `defer` to GCC is easy[2] but not portable. I like to see the
    cleanup action of stuff near to its 1st definition and think the code readability benefits a lot from that.

    [2]: <https://github.com/cmhood/c-defer>


    I think it part of C's philosophy, for which reason it retains `goto',
    by the way.

    I never has a problem with `goto`, only without it! o;-)

    Perhaps you would like C3 (if you don't already):
    <https://c3-lang.org/> ?

    I think I haven't seen that before.

    | Thanks to full ABI compatibility with C, it's possible to mix C and C3
    | in the same project with no effort.

    \o/ ____( ... seems worth a look! )

    But:

    | Discuss The Language
    |
    | Join us on C3 Discord.
    | Open a thread on Discourse.

    Yuck!

    And the LLVM on my main workhorse is not young enough for building C3.
    So it'll have to wait a bit or even a byte.

    It has `defer', and consequently no `goto'.

    Why is there a connection? I'd not swap `defer` for `goto`.

    There is also Hare:
    <https://harelang.org/> , with deferral and no `goto'.

    Last time I looked at Hare it used an unknown to me C-compiler backend
    and only was available for X86/64. Noticing that, I stopped reading
    more about it.
    --
    I do not bite, I just want to play.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From Patricia Ferreira@pferreira@example.com to tilde.club on Thu Oct 17 10:02:36 2024
    yeti <yeti@tilde.institute> writes:

    Patricia Ferreira <pferreira@example.com> wrote:

    yeti <yeti@tilde.institute> writes:

    [...]

    Perfect! \o/

    --
    I'm nonbinary. I use Emacs and Nvi.

    Traitor! \o/

    For some years I had a job where I needed to be flexible about what was installed and what not. The clients' systems were very diverse, but I
    could bet on VI being installed.

    Being able to survive with ED and VI for basic tasks makes one sleep
    better than relying on finding Emacs or being able to "tramp" onto the
    target system.

    Perhaps you could just specialize produce yourself a static executable
    of an editor like sciteco, not far from the GNU EMACS experience. :P

    Homepage:
    https://rhaberkorn.github.io/sciteco/index.html

    But sure I wouldn't like to write my notes about code without org-babel.

    ...and on 9front I prefer ED! Take that, ACME!!!

    LOL! Wild. I'd become an ACME expert. I used it once a gave Plan9 a
    tour. I really liked what I saw. But I can't use that system daily.
    It doesn't have all the programs I need to use, of course.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From yeti@yeti@tilde.institute to tilde.club on Thu Oct 17 14:26:17 2024
    Patricia Ferreira <pferreira@example.com> wrote:

    Perhaps you could just specialize produce yourself a static executable
    of an editor like sciteco, not far from the GNU EMACS experience. :P

    Homepage:
    https://rhaberkorn.github.io/sciteco/index.html

    It's just echoes from the past. I don't have to use editors I don't
    like any more. So I just keep enough `vi` in my neurons to get along
    with it for fixing some config files.
    --
    \o/ ____( 🧑 👩 👨 📷 📺 )
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From Patricia Ferreira@pferreira@example.com to tilde.club on Thu Oct 17 11:52:48 2024
    yeti <yeti@tilde.institute> writes:

    Patricia Ferreira <pferreira@example.com> wrote:

    Perhaps you could just specialize produce yourself a static executable
    of an editor like sciteco, not far from the GNU EMACS experience. :P

    Homepage:
    https://rhaberkorn.github.io/sciteco/index.html

    It's just echoes from the past. I don't have to use editors I don't
    like any more. So I just keep enough `vi` in my neurons to get along
    with it for fixing some config files.

    I'm sure vi is a great editor, mas the EMACS editors after incorporating
    a Lisp compiler (very close to Common Lisp) seems unsurmountable.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From yeti@yeti@tilde.institute to tilde.club on Thu Oct 17 16:45:00 2024
    Patricia Ferreira <pferreira@example.com> wrote:

    I'm sure vi is a great editor, mas the EMACS editors after
    incorporating a Lisp compiler (very close to Common Lisp) seems unsurmountable.

    EmacsOS has apps for every thing and its pets, but still today EmacsOS
    is bad at multitasking.
    --
    I do not bite, I just want to play.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From Patricia Ferreira@pferreira@example.com to tilde.club on Thu Oct 17 19:34:18 2024
    yeti <yeti@tilde.institute> writes:

    Patricia Ferreira <pferreira@example.com> wrote:

    I'm sure vi is a great editor, [but] the EMACS editors[,] after
    incorporating a Lisp compiler (very close to Common Lisp)[,] seems
    unsurmountable.

    EmacsOS has apps for every thing and its pets, but still today EmacsOS
    is bad at multitasking.

    Yes. How I wish they'll solve this. When I fetch news with Gnus, it
    sucks that I have to wait to anything else.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From yeti@yeti@tilde.institute to tilde.club on Fri Oct 18 06:11:24 2024
    Patricia Ferreira <pferreira@example.com> wrote:

    yeti <yeti@tilde.institute> writes:

    Patricia Ferreira <pferreira@example.com> wrote:

    I'm sure vi is a great editor, [but] the EMACS editors[,] after
    incorporating a Lisp compiler (very close to Common Lisp)[,] seems
    unsurmountable.

    EmacsOS has apps for every thing and its pets, but still today EmacsOS
    is bad at multitasking.

    Yes. How I wish they'll solve this. When I fetch news with Gnus, it
    sucks that I have to wait to anything else.

    And plan-b, running different stuff in different instances, isn't easily possible with older Emacsens. They may screw up the shared config and
    at least cause annoying effects. Newer Emacsens can have per instance rc-files, but the one on my waiting to get upgraded main workhorse still
    lacks this feature.

    Having turned my #Fedibreak into a #Fedisiucide, at least the
    mastodon.el instance now is gone for a while[0], but for Babel and GNUS
    there still are two running and I better take one down for adding modes
    or configuring stuff on the other one.

    It feels strange that this, after decades, still is a problem.

    ____________


    [0]: I do not miss the Fediverse (the technology), just some neighbours
    from there and additionally curiosity for mastodon.el's evolution
    may be a reason to somewhen join that global noise again. May it
    last long before that happen! ;-P
    --
    Curiosity may kill a cat, but it keeps a yeti alive.
    --- Synchronet 3.19b-Linux NewsLink 1.113
  • From W. Greenhouse@wgreenhouse@tilde.club to tilde.club on Fri Oct 18 08:05:19 2024
    yeti <yeti@tilde.institute> writes:


    And plan-b, running different stuff in different instances, isn't easily possible with older Emacsens. They may screw up the shared config and
    at least cause annoying effects. Newer Emacsens can have per instance rc-files, but the one on my waiting to get upgraded main workhorse still lacks this feature.

    On older Emacsen the trick of starting the new instance on an altered
    $HOME may be useful for this kind of isolation.

    Having turned my #Fedibreak into a #Fedisiucide, at least the
    mastodon.el instance now is gone for a while[0], but for Babel and GNUS
    there still are two running and I better take one down for adding modes
    or configuring stuff on the other one.

    It feels strange that this, after decades, still is a problem.

    YMMV I guess. I use this Gnus for 3 IMAP servers and 3 NNTP servers. The
    only pause is on starting all of that up. The same Emacs runs jabber.el
    without blocking.

    Much like some other languages that lack concurrency but can simulate it
    (the Prosody XMPP server's implementation in a single Lua process, able
    to serve thousands of concurrent users, comes to mind), Emacs runs as a
    single event loop going very fast. Code written in sympathy with this
    (handle streams of subprocess/network activity a little bit at a time,
    then handle user input, then go back, very fast) avoids visibly
    pausing. Trouble occurs when the network/subprocess handling has to do something computationally expensive immediately, which should be
    avoided.
    --- Synchronet 3.19b-Linux NewsLink 1.113