From: Kevin J. Fletcher <dev@kjfletch.co.uk>
To: guile-user@gnu.org
Subject: Extending a GTK+ Application with Guile
Date: Thu, 24 May 2012 20:11:50 +0100 [thread overview]
Message-ID: <87k4019yx5.fsf@kjfletch.co.uk> (raw)
Hello Guilers.
I'm currently writing some prototype code before starting a project and
have a few questions that I hope some of you may be able to answer.
My intent is to add guile as a method of [optionally, at build time]
extending a GTK+ application. With the addition of being able to run
guile scripts I hope to provide a guile-shell to give real-time
interactive power. First a question of program architecture;
As the guile extensions are optional I run GTK on a main thread and the
shell on a second pthread. I connect the shell through a PTY to the
virtual terminal widget.
I apologise to those with mail clients not using monospace fonts.
THREAD1 THREAD2
--------- -------
| GTK | pty | guile |
| VTE |<------->| shell |
| ----- | -------
| guile |
| scripts|
---------
0) Is there anything wrong with this architecture?
a) Is it valid to use both scm_shell and other guile code at the same
time or is scm_shell designed to run in isolation?
b) Not related to guile but while I'm here I may as well ask. Is there
a more appropriate GTK+ method of communicating (STDIN, STDOUT,
STERR) with the running application (to replace the VTE above)
1) scm_shell allows the `,q' command (and probably some other exit
routes) which kills the whole application. Is there a way to present a
shell (or similar subset) without the ability to exit?
2) Thinking of portability, is guile running on Windows (without
cygwin), to justify the claim of 'ubiquitous'?
Happy Hacking,
Kevin Fletcher.
next reply other threads:[~2012-05-24 19:11 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-24 19:11 Kevin J. Fletcher [this message]
2012-05-25 11:14 ` Extending a GTK+ Application with Guile Paul Emsley
2012-05-25 21:30 ` Kevin J. Fletcher
2012-05-25 14:30 ` Ludovic Courtès
2012-05-25 21:43 ` Kevin J. Fletcher
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/guile/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87k4019yx5.fsf@kjfletch.co.uk \
--to=dev@kjfletch.co.uk \
--cc=guile-user@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).