emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Thorsten Jolitz <tjolitz@gmail.com>
To: emacs-orgmode@gnu.org
Subject: Re: [ANN] org-dp now on MELPA
Date: Sat, 06 Feb 2016 17:39:42 +0100	[thread overview]
Message-ID: <87egcpn67l.fsf@gmail.com> (raw)
In-Reply-To: 874mdl26y6.fsf@gmx.us

Rasmus <rasmus@gmx.us> writes:

> Thorsten Jolitz <tjolitz@gmail.com> writes:
>
>> Xebar Saram <zeltakc@gmail.com> writes: 
>>
>> Hi Xebar, 
>>
>>> Thx Thorsten 
>>>
>>> i still use it daily :D 
>>
>> I did not know that I have a user actually, because when I announced
>> it a year ago or so it never drew much attention (a bit to my
>> surprise, I must admit). So I'm happy about the news ;-) 
>
> It's also mentioned here, though it may be a unfair characterization
> of org-dp:
>
>     http://emacs.stackexchange.com/a/2885/1974

Thanks for advertising a bit! 

#+BEGIN_QUOTE
org-dp is a meant to make it easer for to use "lisp representation" to
create new "Org syntax representation" (as this it not a goal of
org-element per se).
#+END_QUOTE
                         
Its not wrong or unfair, but not what I would say either. org-element
does the same thing - parse the given text, work on the internal
representation, write the new text by interpreting the modified internal
representation. Only that it parses the whole (maybe narrowed) buffer
and has all context info, and mostly is not used to write Org syntax
(but rather those of the export backends).

 Maybe this excerpt from the README is a better characteristic:

,----
| Library org-dp is meant for programming at the local level,
| i.e. without any (contextual) information except those about the
| parsed element at point. It is designed to make using the Org-mode
| parser/interpreter framework at local level as convenient as using
| it at the global level (with a complete parse-tree produced by
| `org-element-parse-buffer` available). 
`----

And the 'd' in 'dp' is important, since this is a different programming
style. Its more declarative (in the sense of "A program that describes
what computation should be performed and not how to compute it") because
the programmer 'declares' he wants a certain element type with certain
parameter values at a certain place. Parsing the existing element and
writing the new/modified element, the HowTo, is mostly left to the
parser framework.

Source code that uses org-dp looks quite different from the usual Elisp
sources in Emacs/Org libraries that work on the textual representation.

-- 
cheers,
Thorsten

  reply	other threads:[~2016-02-06 16:39 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-06 14:47 [ANN] org-dp now on MELPA Thorsten Jolitz
2016-02-06 14:55 ` Xebar Saram
2016-02-06 15:21   ` Thorsten Jolitz
2016-02-06 15:29     ` Rasmus
2016-02-06 16:39       ` Thorsten Jolitz [this message]
2016-02-06 18:16         ` Rasmus
2016-02-06 19:54           ` Thorsten Jolitz

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.orgmode.org/

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

  git send-email \
    --in-reply-to=87egcpn67l.fsf@gmail.com \
    --to=tjolitz@gmail.com \
    --cc=emacs-orgmode@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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

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).