Hmmmm no more entries. :-( Anyway, here is my entry, just to prove that N is 8 (at least for now), and also to show that perl can function as a write-only language.
- Carsten #!/usr/bin/perl -p # taskpaper-to-org converter including #+TAGS setup in 239 bytes /^(\t*)-(.*?)((@\w+ *)*)$/; @u=grep{$_ ne'@done'}(@t=split/ +/,$3); @[EMAIL PROTECTED]('',@u,''):(); [EMAIL PROTECTED]; $_="*"x(2+length$1).(@[EMAIL PROTECTED]" TODO":" DONE").$2.join(":",@v)."\n"if$&; s/^\w.*:\s*$/* $&/; END{printf "* Setup\n#+TAGS: %s\n",join' ',keys%t} On Apr 4, 2008, at 11:12 AM, Carsten Dominik wrote:
Well, indeed not exactly the same, but very close. A way to measure the distance between two formats is using a discrete p-N metric. The distance between two formats is said to be N if there is perl program with less than 2^N (2 to the power N) significant characters that will turn this test taskpaper file /---------------------------------------------------- | Project 1: | - Task 1 @home | - Task 2 @work @boss | - Subtask 2.1 @done | - Subtask 2.2 @Alice | More text belonging to subtask 2.2 | - Task 3 | This is not a project, but text belonging to task 3 | | Project 2: | - Task 4 | - Task 5 @done \---------------------------------------------------- into this equivalent Org file: /---------------------------------------------------- | * Project 1: | ** TODO Task 1 :@home: | ** TODO Task 2 :@work:@boss: | *** DONE Subtask 2.1 | *** TODO Subtask 2.2 :@Alice: | More text belonging to subtask 2.2 | ** TODO Task 3 | This is not a project, but text belonging to task 3 | | * Project 2: | ** TODO Task 4 | ** DONE Task 5 \---------------------------------------------------- Anyone wants to take up the challenge? What N can be achieved? Bonus points if the program also adds /--------------------------------- | #+TAGS: @Alice @boss @work @home \--------------------------------- somewhere, but that is not required for a valid entry. No more than 2^N *significant* characters means that after stripping the line invoking the perl interpreter #+/usr/bin/perl -p and after stripping newlines and other insignificant whitespace, the program may have at most 2^N bytes. In fact, any other language is also allowed - however, usually perl makes the smallest converters and is therefore the best measure for distance in p_N space. - Carsten _______________________________________________ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
_______________________________________________ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode