haskell / haskell/haskell-mode

haskell-interactive-bring process buffer not compatible with org-mode babel ob-haskell session buffer

Open
#1,429 14 comments 5 reactions 0 assignees View on GitHub
Dominant language
Emacs Lisp
Stars
1.4k
Forks
354
Avg merge
5d 10h
Merged PRs (30d)
2

Description

When I execute command `haskell-interactive-bring` will start a process buffer
named `*haskell*` from haskell source code buffer.

When I execute Org-mode Babel haskell src block like this:

``` org
#+BEGIN_SRC haskell
1 + 3
#+END_SRC
```

It will start a session buffer named `*haskell*` too.

But the problem is they are not compatible with each other.

If I start haskell process buffer from haskell source code buffer with command
`haskell-interactive-bring` at first, then run the Org-mode haskell babel src
block, then I will get error:

```
org-babel-execute:haskell: Buffer *haskell* does not exist or has no process
```

And in reverse, execute org-mode babel at first to start the session buffer,
then I run command `haskell-interactive-bring` from haskell source code buffer,
I will get another error:

```
Debugger entered--Lisp error: (error "Format specifier doesn’t match argument type")
format("*%s <%d>*" "haskell" "nil")
haskell-session-interactive-buffer(((name . "haskell")))
haskell-interactive-bring()
funcall-interactively(haskell-interactive-bring)
call-interactively(haskell-interactive-bring nil nil)
command-execute(haskell-interactive-bring)
```

Contributor guide

Open the contributing guide

Research direction

Reproduce both execution orders using haskell-interactive-bring and the Org-mode Babel Haskell block, observing the *haskell* session buffer and the reported errors. Trace the entry points haskell-interactive-bring, haskell-session-interactive-buffer, and org-babel-execute:haskell. Done means both commands can use the same session buffer without either error.

Written by the indexing model from the issue text.

Assessment

Tech stack
emacs, emacs-lisp, haskell
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.