From: david larsson <david.larsson@selfhosted.xyz>
To: Stefan Israelsson Tampe <stefan.itampe@gmail.com>
Cc: Guile User <guile-user@gnu.org>
Subject: Re: python-on-guile
Date: Sun, 09 Feb 2020 20:39:48 +0100 [thread overview]
Message-ID: <d1f937188a4e393cf356dd93f6d725ed@selfhosted.xyz> (raw)
In-Reply-To: <CAGua6m2YW9f12jR2O-Mmy2z8_8Yk2=KF1BsY-MOQBL31xTcuGg@mail.gmail.com>
Thanks for your explanations, but unfortunately I still can't figure out
how to use this except in the simplest of cases.
I am using the guix package python-on-guile 0.1.0-3.00a51a2 - maybe
thats outdated?
The simple things I have managed to do, are like:
(add-to-load-path (dirname (current-filename)))
(load-compiled python-test.go)
where python-test.go is compiled with:
guild compile python-test.py --output=python-test.go --from=python
and contains simple things, like:
f(s):
a = s + 1
return a
but if I add statements to python-test.py like:
import netaddr
def myfun(a)
<something using netaddr>
(netaddr is a module installed via: pip3 install --user netaddr)
I receive an error about not finding the module.
I am able to add only the modules which exist in the python-on-guile
repo, like:
import sys
import base64
but Im getting errors, for example Im not able to use things from sys,
like:
sys.path.append(<somepath>)
sys.path.insert(0, <somepath>)
I was able to use some things from base64 but I only received weird
results when converting between bytevectors and strings between the .scm
file and .py file. What works fine using python3 python-test.py do not
usually work when passing either a bytevector or string to the same
go-compiled file from the .scm file using the python-code. Not sure
whether there's a problem using python3 vs python2 here?
Essentially, what Im looking for is how to proceed if I want to use
modules installed via the pip package manager from guile, and what paths
and imports I need to make, and how I might need to wrap them correctly
in the scheme and python files to invoke a pip package procedure from
guile.
Best regards,
David
On 2020-02-09 18:59, Stefan Israelsson Tampe wrote:
> I'm the author of that lib.
>
> 1)
>
> The main bindings are reachable through (language python module
> python)
>
> So you could now go ahead and do
>> (use-modules (language python module python))
>> ;L python
>
> And you will get a python shell that works quite ok for one liners
>
> 2)
>
> If you write a module and place it in a/b/c.py
> you can use the classes and functions theirin by
>
> (use-modules (a b c))
>
> 3)
> you can load a .py file as (i hope this work)
> (load "a.py")
>
> 4)
> If you place a module in (language python module a.py) you can import
> ir as a usual mode as
>> from a import *
>
> The documentation is for the macro framework that enables you to work
> with python classes and idioms like python iteration.
>
> Hope this helps
> /Stefan
>
> On Sun, Feb 9, 2020 at 6:31 PM david larsson
> <david.larsson@selfhosted.xyz> wrote:
>
>> Hi everyone,
>> I am trying to wrap my head around how to use the python-on-guile
>> library, but Im struggling. Does anyone have example code that might
>>
>> help, and which isn't too advanced?
>>
>> All tips and suggestions appreciated!
>>
>> Best regards,
>> David
next prev parent reply other threads:[~2020-02-09 19:39 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-09 17:30 python-on-guile david larsson
2020-02-09 17:59 ` python-on-guile Stefan Israelsson Tampe
2020-02-09 19:39 ` david larsson [this message]
[not found] ` <CAGua6m1aQuwGu4ZRRk9r1Ytao_QjftzCQK5+tb_B4axh-Y3aWg@mail.gmail.com>
[not found] ` <CAGua6m1VFHsaid+CGUN==3AvXqZTZUO8xbOSh3r4xNVTAik79g@mail.gmail.com>
[not found] ` <CAGua6m3vTY=hk8QaEoKUvFwPsm7N-uatMV1KyvgdAyKS4Gjh9g@mail.gmail.com>
2020-02-10 12:13 ` python-on-guile david larsson
2020-02-10 14:40 ` python-on-guile Stefan Israelsson Tampe
2020-02-10 14:46 ` python-on-guile Stefan Israelsson Tampe
2020-02-10 20:11 ` python-on-guile Stefan Israelsson Tampe
2020-02-11 7:17 ` python-on-guile david larsson
2020-02-11 10:44 ` python-on-guile Stefan Israelsson Tampe
2020-02-11 20:57 ` python-on-guile Stefan Israelsson Tampe
2020-02-12 9:18 ` python-on-guile david larsson
2020-02-12 9:59 ` python-on-guile Stefan Israelsson Tampe
2020-02-12 15:26 ` python-on-guile david larsson
[not found] ` <CAGua6m2SP2RZ1Ok5bG2xmoHGanmRUrfaG34yY7P8=AWs0fXw2g@mail.gmail.com>
2020-02-12 19:47 ` python-on-guile david larsson
[not found] ` <CAGua6m1rcNZT_15LN=dWRb66E93UyLDFfdkaJjmyWYerWE9Jpg@mail.gmail.com>
[not found] ` <46dbd813788cc3d1dc0b994106c8a528@selfhosted.xyz>
[not found] ` <CAGua6m12ytkdDcHj+PEx615qCzaXPB4P+u-DCqWQexuRo28BWA@mail.gmail.com>
2020-02-13 7:30 ` python-on-guile david larsson
[not found] ` <CAGua6m2+hEpGf8Z+CfyO+-mKH4sQF-mVb7YS1=+88hF2bRkjPw@mail.gmail.com>
2020-02-18 10:45 ` python-on-guile david larsson
[not found] ` <CAGua6m0d=L9b9MEMYekX0tL0PO3k+ZR+LP=7YYQojzr0VYdkmw@mail.gmail.com>
2020-02-19 7:30 ` python-on-guile david larsson
-- strict thread matches above, loose matches on Subject: below --
2021-04-23 15:00 Python-on-guile Mikael Djurfeldt
2021-04-23 20:35 ` Python-on-guile Zelphir Kaltstahl
2021-04-23 20:41 ` Python-on-guile Linus Björnstam
2021-04-23 21:04 ` Python-on-guile Matt Wette
2021-04-24 9:43 ` Python-on-guile Mikael Djurfeldt
2021-04-24 10:04 ` Python-on-guile Mikael Djurfeldt
2021-04-24 11:26 ` Python-on-guile Stefan Israelsson Tampe
2021-04-24 12:59 ` Python-on-guile Stefan Israelsson Tampe
2021-04-24 14:41 ` Python-on-guile Stefan Israelsson Tampe
2021-04-24 15:19 ` Python-on-guile Stefan Israelsson Tampe
2021-04-25 8:20 ` Python-on-guile Mikael Djurfeldt
2021-04-25 10:21 ` Python-on-guile Stefan Israelsson Tampe
2021-04-25 8:46 ` Python-on-guile Stefan Israelsson Tampe
2021-04-25 10:54 ` Python-on-guile Dr. Arne Babenhauserheide
2021-04-25 11:54 ` Python-on-guile Vivien Kraus via General Guile related discussions
2021-04-25 10:18 ` Python-on-guile Stefan Israelsson Tampe
2021-04-27 12:29 ` Python-on-guile Nala Ginrut
2019-07-09 17:15 python-on-guile Stefan Israelsson Tampe
2019-06-14 18:06 python-on-guile Stefan Israelsson Tampe
2019-06-22 21:07 ` python-on-guile Arne Babenhauserheide
2019-06-26 18:45 ` python-on-guile Nala Ginrut
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=d1f937188a4e393cf356dd93f6d725ed@selfhosted.xyz \
--to=david.larsson@selfhosted.xyz \
--cc=guile-user@gnu.org \
--cc=stefan.itampe@gmail.com \
/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).