Nothing new; I've tried all that. Yes, *some* of the examples in
https://github.com/tj64/ob-picolisp work. But again, the picolisp tutorial
example

#+BEGIN_SRC picolisp
# call the 'MD5' function from 'libcrypto.so'

(let Str "The quick brown fox jumped over the lazy dog's back"
   (pack
      (mapcar '((B) (pad 2 (hex B)))
         (native "libcrypto.so" "MD5"
            '(B . 16) Str (length Str) '(NIL (16))))))
#+END_SRC

produces

executing Picolisp code block...
executing Picolisp source code block
Wrote /tmp/babel-11969YoC/ob-input-119693pA
org-babel-execute:picolisp: End of file during parsing

and a basic thing like this:

#+name: hello
#+begin_src picolisp
(de hello (X)
   (prinl "Hello " X) )
#+end_src

isn't working either. It also gives

executing Picolisp code block (hello)...
executing Picolisp source code block
Wrote /tmp/babel-8702vHu/ob-input-8702Ete
org-babel-execute:picolisp: End of file during parsing

Again, picolisp-mode is working (however it doesn't like who, what, more,
etc), but org-mode not so well. I'm sure it has something to do with
org-mode babel's picolisp not  being properly integrated with
picolisp-mode. In general, I bother with Emacs org-mode because I think a
sizeable percentage of Emacs users now live inside of org-mode.

On Thu, Feb 22, 2018 at 9:44 PM, Nehal <nehalsingha...@gmail.com> wrote:

> As far as picolisp running in Org mode is concerned:
>
>
> ** 1. I tried the following code in org babel and they show perfect
> results as shown in ob-picolisp-more-tests.org given on
> https://github.com/tj64/ob-picolisp.
>
> *** Example 1
>
>     #+begin_src picolisp  :results value html
>        (load  "@lib/http.l" "@lib/xhtml.l" "@lib/form.l")
>
>        (html 0 "Hello" "@lib.css" NIL
>           (<h1> NIL "Hello World!")
>           (<br> "This is some text.")
>           (ht:Prin "And this is a number: " (+ 1 2 3)) )
>      #+end_src
>
>    #+RESULTS:
>    #+BEGIN_HTML
>    </html>
>    #+END_HTML
>
> *** Example 2
>
>      #+begin_src picolisp  :results value code
>        '(a (b c d) (e (f (g) (h) (i)) (j (k) (l) (m))) (n o p) q)
>      #+end_src
>
>      #+RESULTS:
>      #+BEGIN_SRC picolisp
>      (a
>         (b c d)
>         (e
>            (f (g) (h) (i))
>            (j (k) (l) (m)) )
>         (n o p)
>         q )
>      #+END_SRC
>
>
>
> *** Example 3
>
>      #+begin_src picolisp  :results value pp
>        '(a (b c d) (e (f (g) (h) (i)) (j (k) (l) (m))) (n o p) q)
>      #+end_src
>
>      #+RESULTS:
>      : (a
>      :    (b c d)
>      :    (e
>      :       (f (g) (h) (i))
>      :       (j (k) (l) (m)) )
>      :    (n o p)
>      :    q )
>
>
> ** 2. Try commenting out code (/picoLisp/lib/el) in your .emacs:
>
> ;; In order to get the picolisp-mode working correctly you have to
> ;; add the following expressions to your .emacs and adapt them
> ;; according to your set-up:
>
> ;;     (add-to-list 'load-path "/opt/picoLisp/lib/el")
> ;;     (load "tsm.el") ;; Picolisp TransientSymbolsMarkup (*Tsm)
> ;;     (autoload 'run-picolisp "inferior-picolisp")
> ;;     (autoload 'picolisp-mode "picolisp" "Major mode for editing
> ;;      Picolisp." t)
>
> ;; pil is more modern than plmod
>   ;;   (setq picolisp-program-name "/opt/picoLisp/pil")
>
> ;; If you have also SLIME installed, it will suck all possible lisp
> ;; extensions up.
> ;; So in order to get the correct file-association for picolisp
> ;; files you'll have to also add this:
>
>     ;; (add-to-list 'auto-mode-alist '("\\.l$" . picolisp-mode))
>
> ;; If you want, you can add a few hooks for convenience:
>
>    ;;  (add-hook 'picolisp-mode-hook
>      ;;        (lambda ()
>        ;;    (paredit-mode +1) ;; Loads paredit mode automatically
>          ;;  (tsm-mode) ;; Enables TSM
>         ;;   (define-key picolisp-mode-map (kbd "RET") 'newline-and-indent)
>         ;;   (define-key picolisp-mode-map (kbd "C-h")
> 'paredit-backward-delete) ) )
>
> ;; By the way, don't forget to patch your paredit.el (v21) with the
> ;;  patch provided to get a smoother editing.
>
> ;;(add-hook 'lisp-mode-hook (lambda () (slime-mode t)))
> ;;(add-hook 'inferior-lisp-mode-hook (lambda () (inferior-slime-mode t)))
> ;;(slime) (slime-scratch)
>
> And having only:
>
> (org-babel-do-load-languages 'org-babel-load-languages
>                              '( (emacs-lisp . t)
>                                (gnuplot . t)
>                                (lisp . t)
>                                (picolisp . t)
>                                (python . t)
>                                (sh . t)))
>
> (Mainly add picolisp above) and then restart Emacs. This works perfectly
> here.
>
> On 2/22/18, Lawrence Bottorff <borg...@gmail.com> wrote:
> > I tracked it down to something totally bizarre: Starting emacs GUI (I'm
> on
> > Ubuntu + Gnome) from a task bar button with the command
> >
> > emacsclient -c -a ''
> >
> > (that's two single quotes)
> >
> > was the problem, i.e., using the emacs daemon. However, changing the task
> > bar button to
> >
> > emacs --daemon
> >
> > then running
> >
> > emacs &
> >
> > from an open terminal "fixed" the problem. I spent hours tearing things
> out
> > of my init diaspora, doing emacs -q, then C-x-e-ing things back in, etc.
> I
> > have absolutely no idea why starting Emacs this way would make a
> > difference. I'm saying this fixed the problem with `run-picolisp` inside
> of
> > picolisp-mode. But still, org-mode picolisp is touchy. For example, one
> of
> > the tutorial examples:
> >
> > (let Str "The quick brown fox jumped over the lazy dog's back"
> >    (pack
> >       (mapcar '((B) (pad 2 (hex B)))
> >          (native "libcrypto.so" "MD5"
> >             '(B . 16) Str (length Str) '(NIL (16))))))
> >
> > runs fine in a picolisp-mode started REPL, but not in an org-mode code
> > block like this:
> >
> > #+BEGIN_SRC picolisp
> > # call the 'MD5' function from 'libcrypto.so'
> > (let Str "The quick brown fox jumped over the lazy dog's back"
> >    (pack
> >       (mapcar '((B) (pad 2 (hex B)))
> >          (native "libcrypto.so" "MD5"
> >             '(B . 16) Str (length Str) '(NIL (16))))))
> > #+END_SRC
> >
> > Running the above gives:
> >
> > executing Picolisp code block...
> > executing Picolisp source code block
> > Wrote /tmp/babel-26285uqi/ob-input-26285Ue1
> > org-babel-execute:picolisp: End of file during parsing
> >
> > and no result. Also, some of the examples in this
> > <https://github.com/tj64/ob-picolisp> aren't working properly, but then
> I'm
> > guessing it's more org-mode's having changed (tables, variable in source
> > block, etc.) since this was put together. Also, doing C-c C-c on an
> > org-mode code block doesn't seem to start a REPL as does, say, Racket.
> I'm
> > saying with Racket, any org-mode code block you may run immediately
> starts
> > a  Racket REPL "session" wherein, e.g., a function is then known  . . .
> but
> > this is not the case when you run a picolisp code block. I know Racket
> runs
> > in conjunction with Geiser-mode. I would think picolisp babel would run
> in
> > conjunction with picolisp-mode. . . .
> >
> >  Basically, I'm concerned about org-mode more than regular
> > picolisp-mode+REPL because Emacs is evolving into an org-mode vehicle,
> AFAI
> > can tell. New people to picolisp who use Emacs will likely be org-moders
> > too.
> >
> > LB
> >
> > On Wed, Feb 21, 2018 at 9:50 PM, Nehal <nehalsingha...@gmail.com> wrote:
> >
> >> Hi Lawrence,
> >>
> >> Check:
> >>
> >> 1. If pil is running correctly in shell from inside Emacs.
> >> 2. If you added Picolisp in .emacs file in
> >>     (org-babel-do-load-languages 'org-babel-load-languages
> >>                                   '((picolisp . t)))
> >>
> >>
> >> On 2/21/18, Lawrence Bottorff <borg...@gmail.com> wrote:
> >> > I'm getting either
> >> >
> >> > Searching for program: No such file or directory, pil
> >> >
> >> > or
> >> >
> >> > File already exists: /home/hercynian/.pil/editor-orig
> >> >
> >> > whenever I try to do `run-picolisp` in Emacs. I've got pil correctly
> >> > set
> >> > up:
> >> >
> >> >>which pil
> >> > /home/me/opt/picoLisp/pil
> >> >
> >> > and the command-line pil works fine
> >> >
> >> >>pil
> >> > : (version)
> >> > 18.2.3
> >> > -> (18 2 3)
> >> > :
> >> >
> >> > I've also spelled out to babel where pil is:
> >> >
> >> > Org Babel Picolisp Cmd: /home/me/opt/picoLisp/pil
> >> >
> >> > picolisp-mode starts up fine (using provided .el), but then it can't
> >> > evaluate, with similar errors above.
> >> >
> >> > L. Bottorff
> >> > Goshen, IN
> >> >
> >>
> >>
> >> --
> >> Warm Regards,
> >> Nehal Singhal
> >>
> >> --
> >> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
> >>
> >
>
>
> --
> Warm Regards,
> Nehal Singhal
>
> --
> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
>

Reply via email to