unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: Jean Louis <bugs@gnu.support>
To: Christopher Dimech <dimech@gmx.com>
Cc: help-gnu-emacs@gnu.org
Subject: Re: outline-minor-mode and org-mode capabilities for programming languages
Date: Mon, 10 May 2021 14:43:01 +0300	[thread overview]
Message-ID: <YJkcRSy4fl/cTXbt@protected.localdomain> (raw)
In-Reply-To: <trinity-a4748193-4aa0-430a-964c-19ae1a48860b-1620640885021@3c-app-mailcom-bs03>

* Christopher Dimech <dimech@gmx.com> [2021-05-10 13:01]:
> > I don't believe Org mode is solution for everything. In my Hyperscope
> > system and also Website Revision System specific system, I have no
> > limitation on what mode or text processor to use. 
> 
> No, only when one wants org-like features.  The plan should be that
> outline-minor-mode handles them, which you have outlined.

Literate programming is descriptional programming. It is just a matter
of marking specific parts of text to be descriptions and specific
parts to be program code.

https://en.wikipedia.org/wiki/Literate_programming#Example

By using text pre-processors one can easily do literate
programming. And I would say it is useful especially if other people
are to learn from the code. We do that as human too little, and thus
benefit too little from each other.

How about instead of embedding code in the text, to embed text in the
code?

In the new GNU Hyperbole package there is simple alias function that
creates a button like:

(defal 'my-tag 'my-function)

then any button in the text shown as:

<my-tag some arguments here> would be activated with M-RET and Emacs
would jump to the corresponding location.

Now if we change the delimiters to be ( and ) we can then define:

(defal 'defun 'jump-to-defun-literate-programming-index)

Which would then make the first line of the below a button, or hyperlink:

(defun something (and more here)
   more)

Emacs has a built-in literate programming features as `C-h f' on the
function brings us to the documentation source. But what if we want to
elaborate the function and make it somewhat better, like Knuth's work,
maybe we want to elaborate it in any markup like TeX or LateX or
Markdown, or in special file, database node, or remote URL?

That is where embedding text into the code comes in. There need not be
visible text in the code, but one could click and get the same
function elaborated with the markup source, markup result such as PDF,
and one could jump back to the code. 

> > Org mode IS bloated. It has everything what one needs and much more
> > what I don't need. It is based on Outline mode and thus I like often
> > invoking Outline mode as that satisfies basic needs without fiddling
> > with Org mode keybindings and whatever other additional not necessary
> > functions. Surely I do use Org mode, but when it is needed.
> 
> Isee that org-mode should not have handled programming languages.  That
> should have been a new programming major mode for multi-language coding.
> 
> I much like the original idea of org-mode and keeping close to that.

Org mode is derivate from Outline mode.

> > We have all function well described, indexed, findable, locatable,
> > usable in programming, we have it all, but IMHO integration is not
> > adequate for my standard. I have expected more of computing in 21st
> > century.
> 
> Welcome to the club of forward thinking.  There is so much work to do
> and so much planning.  I have agreed with Eric Raymond when he said that
> even an idiot can code.

Hahahhha. You know people laugh when they find some truth...

> > How about tag based programming? Just think what you want to do, and
> > other tags appear. Like STRING --- CUT, FIRST PART, LAST PART, FIND
> > ANYWHERE IN THE STRING, SPLIT, CONVERT TO LIST, CHARS, or LIST --
> > REMOVE DUPLICATES, REVERSE etc. Tags could be shown on screen, user
> > just clicks on it and decides relations, something similar to 
> > https://scratch.mit.edu -- where children program animations. More
> > literate, more meanings, just ideas and intentions that result in a
> > program. 
> 
> Too much literate and you loose conciseness.  As in mathematics, if
> things become too literate you would not be able to see a proof you
> can understand in a few pages.  A more mathematical approach to
> things would help in dramatic ways.

Oh, yes I agree, that is quite different concept. We as humans have
the inborn unwillingness to think, though we think all the time, but
nobody is forcing us to make analysis and conclusions with some
quality. When it comes to making analysis, people will rather tend to
skip it, unless they are truly interested in the subject. 

In other words, don't make it too literate for illiterates.


-- 
Jean

Take action in Free Software Foundation campaigns:
https://www.fsf.org/campaigns

Sign an open letter in support of Richard M. Stallman
https://stallmansupport.org/
https://rms-support-letter.github.io/




  reply	other threads:[~2021-05-10 11:43 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-09  8:53 outline-minor-mode and org-mode capabilities for programming languages Christopher Dimech
2021-05-09  9:11 ` Jean Louis
2021-05-09 12:35   ` Christopher Dimech
2021-05-09 12:45     ` Jean Louis
2021-05-09 13:00       ` Christopher Dimech
2021-05-09 16:27         ` Jean Louis
2021-05-09 17:35           ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-05-09 17:50             ` Jean Louis
2021-05-09 18:02               ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-05-09 19:09                 ` Jean Louis
2021-05-10  1:49               ` Christopher Dimech
2021-05-10  6:22                 ` Jean Louis
2021-05-10  6:53                   ` Christopher Dimech
2021-05-10  7:32                     ` Jean Louis
2021-05-10  8:32                       ` Christopher Dimech
2021-05-10  9:29                         ` Christopher Dimech
2021-05-10  9:31                         ` Jean Louis
2021-05-10 10:01                           ` Christopher Dimech
2021-05-10 11:43                             ` Jean Louis [this message]
2021-05-10 12:52                               ` Christopher Dimech
2021-05-10 17:05                                 ` Jean Louis
2021-05-11  2:00                                   ` Christopher Dimech
2021-05-10 10:27                           ` Christopher Dimech
2021-05-10 11:53                             ` Jean Louis
2021-05-10 12:32                               ` Christopher Dimech
2021-05-10 16:07                                 ` Jean Louis
2021-05-11  2:26                                   ` Christopher Dimech
2021-05-10  8:46                       ` Christopher Dimech
2021-05-10  9:15                       ` Christopher Dimech
2021-05-10  9:33                         ` Jean Louis
2021-05-10  6:08             ` Christopher Dimech
2021-05-10  1:25         ` Christopher Dimech
2021-05-09 13:02       ` Christopher Dimech
2021-05-09 16:34         ` Jean Louis
2021-05-09 14:02 ` Stefan Monnier via Users list for the GNU Emacs text editor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YJkcRSy4fl/cTXbt@protected.localdomain \
    --to=bugs@gnu.support \
    --cc=dimech@gmx.com \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).