Re: Python-on-guile

2021-04-27 Thread Nala Ginrut
Nice to know it! I still don't have time to polish my guile-lua-rebirth. Anyway, it's really good news to see the transpiler has a good performance on Guile.! Best regards. On Fri, Apr 23, 2021 at 11:01 PM Mikael Djurfeldt wrote: > Hi, > > Yesterday, Andy committed new code to the compiler, so

Re: Python-on-guile

2021-04-25 Thread Vivien Kraus via General Guile related discussions
Hello, Le dimanche 25 avril 2021 à 12:54 +0200, Dr. Arne Babenhauserheide a écrit : > (next frontier: compete with math that’s implemented via numpy — you > can find RPython implementations of the basics of numpy in the > pypy-sources: > https://foss.heptapod.net/pypy/pypy/-/tree/branch/default/py

Re: Python-on-guile

2021-04-25 Thread Dr. Arne Babenhauserheide
Stefan Israelsson Tampe writes: > (define-syntax-rule (letec f) > (let/ec x (f x > > Actually lead to similar speeds as python3. Please keep in mind that this is math. There are parts of Python that are heavily optimized, for example reading strings from disk. Guile will likely have a har

Re: Python-on-guile

2021-04-25 Thread Stefan Israelsson Tampe
It is not the break let/ex that slows it down. But for wha it's worth we do not do a let/ec if no break is used. Now. On Sun, 25 Apr 2021, 10:20 Mikael Djurfeldt wrote: > Nice! > > I guess it would be nice if "continue" *could* be compiled efficiently. > And, as you indicate, perhaps that would

Re: Python-on-guile

2021-04-25 Thread Stefan Israelsson Tampe
Python List lookup is 2x slower now than cpython. Tuple lookup is slightly faster. On Fri, 23 Apr 2021, 17:01 Mikael Djurfeldt wrote: > Hi, > > Yesterday, Andy committed new code to the compiler, some of which > concerned skipping some arity checking. > > Also, Stefan meanwhile committed somethi

Re: Python-on-guile

2021-04-25 Thread Stefan Israelsson Tampe
The remaining 3x between guile and python can be to either the extensive usage of set! in python or if the number of runs in the inner loop is small because there is a let/ec for the break and according to the standard a catch to support the raising of StopIteration. Set! probably cannot account fo

Re: Python-on-guile

2021-04-25 Thread Mikael Djurfeldt
Nice! I guess it would be nice if "continue" *could* be compiled efficiently. And, as you indicate, perhaps that would amount to efficiently compiling let/ec. Best regards, Mikael On Sat, Apr 24, 2021 at 5:19 PM Stefan Israelsson Tampe < stefan.ita...@gmail.com> wrote: > Guile is 3x faster then

Re: Python-on-guile

2021-04-24 Thread Stefan Israelsson Tampe
Guile is 3x faster then fastest python-on-guile which is 2x faster then python3 Cpython attached is a guile corresponding program. On Sat, Apr 24, 2021 at 4:41 PM Stefan Israelsson Tampe < stefan.ita...@gmail.com> wrote: > To note is that 'continue' is killing performance for python-on-guile > p

Re: Python-on-guile

2021-04-24 Thread Stefan Israelsson Tampe
To note is that 'continue' is killing performance for python-on-guile programs, so by changing the code to not use continue lead to python-on-guile running twice the speed of python3. The reason is that the while loop is used as (while (...) (let/ec continue ...)) And the let/ec is prob

Re: Python-on-guile

2021-04-24 Thread Stefan Israelsson Tampe
Actually changing in (language python compile), (define (letec f) (let/ec x (f x To (define-syntax-rule (letec f) (let/ec x (f x Actually lead to similar speeds as python3. On Sat, Apr 24, 2021 at 1:26 PM Stefan Israelsson Tampe < stefan.ita...@gmail.com> wrote: > Pro tip, when

Re: Python-on-guile

2021-04-24 Thread Stefan Israelsson Tampe
Pro tip, when running this on guile the scheme code that it compilse to is located in log.txt. If you ,opt the resulting code in a guile session you might be able to pinpoint issues that delays the code execution. On Sat, Apr 24, 2021 at 12:04 PM Mikael Djurfeldt wrote: > (I should perhaps add t

Re: Python-on-guile

2021-04-24 Thread Mikael Djurfeldt
(I should perhaps add that my script doesn't benchmark the object system but rather loops, conditionals and integer arithmetic.) Den fre 23 apr. 2021 17:00Mikael Djurfeldt skrev: > Hi, > > Yesterday, Andy committed new code to the compiler, some of which > concerned skipping some arity checking.

Re: Python-on-guile

2021-04-24 Thread Mikael Djurfeldt
On my machine, Jython runs 1.4 times slower than python3, that is almost double the speed of python-on-guile. I attach the script which can be run by simply typing, e.g., python3 ramanujan20.py and should print out 262656 On Fri, Apr 23, 2021 at 11:05 PM Matt Wette wrote: > On 4/23/21 8:

Re: Python-on-guile

2021-04-23 Thread Matt Wette
On 4/23/21 8:00 AM, Mikael Djurfeldt wrote: Hi, Yesterday, Andy committed new code to the compiler, some of which concerned skipping some arity checking. Also, Stefan meanwhile committed something called "reworked object system" to his python-on-guile. Sorry for coming with unspecific informat

Re: Python-on-guile

2021-04-23 Thread Linus Björnstam
Hurra! I noticed a couple.of weeks ago that declarative modules made it possible for me to stop using define-syntax-rule to force stupid inlining of code. The cross module inlining branch will make that even nicer. I can write cleaner code and get better error messages :) Guile has been going

Re: Python-on-guile

2021-04-23 Thread Zelphir Kaltstahl
: ) Good to have an idea about how fast it is. Thank you! On 4/23/21 5:00 PM, Mikael Djurfeldt wrote: > Hi, > > Yesterday, Andy committed new code to the compiler, some of which concerned > skipping some arity checking. > > Also, Stefan meanwhile committed something called "reworked object system"

Re: Python on guile v1.2.3.7

2021-04-17 Thread Dr. Arne Babenhauserheide
Stefan Israelsson Tampe writes: > I have continued to debug python for guile 3.1 and I am now getting much > less warnings and also I can run test cases and it looks good. Tip, To run > unit tests one can do from the module directory in the dist > > python language/python/module/unittest/tests/t

Re: Python on guile v1.2.3.7

2021-04-17 Thread Stefan Israelsson Tampe
Om du vill kan du göra en update på guile and guile-persists, börjar bli bra nu. On Sun, Apr 18, 2021 at 12:12 AM Stefan Israelsson Tampe < stefan.ita...@gmail.com> wrote: > I have continued to debug python for guile 3.1 and I am now getting much > less warnings and also I can run test cases and

Re: Python on guile v1.2.3.7

2021-04-17 Thread Stefan Israelsson Tampe
I have continued to debug python for guile 3.1 and I am now getting much less warnings and also I can run test cases and it looks good. Tip, To run unit tests one can do from the module directory in the dist python language/python/module/unittest/tests/test_case.py to see what's working and what'

Re: Python on guile v1.2.3.7

2021-04-14 Thread Mikael Djurfeldt
Hi Stefan, Could it be that you have not committed the file: language/python/module/re/flag-parser.scm ? Best regards, Mikael On Sun, Apr 11, 2021 at 11:23 AM Stefan Israelsson Tampe < stefan.ita...@gmail.com> wrote: > Hi, > > I released a new tag of my python code that basically is a snapsho

Re: Python on guile v1.2.3.7

2021-04-11 Thread Dr. Arne Babenhauserheide
Maxim Cournoyer writes: > Hi Stefan, >> This release includes >> * pythons new match statement >> * dataclasses >> * Faster python regexps through caching and improved datastructures >> * Numerous bug fixes found while executing the python unit tests. That’s really cool! Thank you! Best wishes

Re: Python on guile v1.2.3.7

2021-04-11 Thread Maxim Cournoyer
Hi Stefan, Stefan Israelsson Tampe writes: > Hi, > > I released a new tag of my python code that basically is a snapshot of a > work in progress. > > This release includes > * pythons new match statement > * dataclasses > * Faster python regexps through caching and improved datastructures > * Nu

Re: Python on guile v1.2.3.6

2020-08-18 Thread Joshua Branson via General Guile related discussions
That's pretty awesome! -- Joshua Branson Sent from Emacs and Gnus

Re: Python on guile v1.2.3

2020-06-23 Thread Marius Bakke
Stefan Israelsson Tampe writes: > done, all now have tags 1.2.3 Incredible response time, thanks! :-) I have not been able to build stis-parser, because slask.scm is missing: https://gitlab.com/tampe/stis-parser/-/issues/2 Is it a bug, or am I doing something wrong? Thanks, Marius

Re: Python on guile v1.2.3

2020-06-23 Thread Marius Bakke
Stefan Israelsson Tampe writes: > Hi, > > I just tagged a minor release python on guile v1.2.3 that mainly is > bugfixes an implementation of pythons ctypes ontop of guiles ffi layer. Hi, thanks for this work! I don't see any tags in this repository: https://gitlab.com/python-on-guile/python

Re: Python on guile v1.2.3

2020-06-23 Thread Stefan Israelsson Tampe
done, all now have tags 1.2.3 On Tue, Jun 23, 2020 at 2:54 PM Marius Bakke wrote: > Stefan Israelsson Tampe writes: > > > Hi, > > > > I just tagged a minor release python on guile v1.2.3 that mainly is > > bugfixes an implementation of pythons ctypes ontop of guiles ffi layer. > > Hi, thanks fo

Re: Python on guile version 1.2

2020-04-26 Thread Stefan Israelsson Tampe
yes we can compile to module ast python-on-guile compiles to macros in scheme that can be used without compiling python from scheme. It targets good or excellent interoperability between scheme and python Yes works on guile 3.0. Also you need the most current dependencies see readme On Sat, Apr

Re: Python on guile version 1.2

2020-04-25 Thread zimoun
Dear, Thank you for this interesting work. On Fri, 10 Apr 2020 at 15:41, Stefan Israelsson Tampe wrote: > I'm pleased to announce python on guile 1.2. This version increases the > correctness of the parser as well as adding quite a number of system py > files that compiles as an example the we

Re: Python on guile

2020-03-23 Thread Arne Babenhauserheide
Stefan Israelsson Tampe writes: > Now in corona times I'm working quite a lot with python-on-guile fixing > bugs in the parser and compiler. Trying to add and test more python > modules. My test case is to get IPython running on python on guile. You’re awesome! Thank you! It sounds like the t

Re: Python on guile

2020-03-01 Thread Maxim Cournoyer
Hello Stefan! Stefan Israelsson Tampe writes: > Hi all, there is an ever stream of tickets to fix in the python clone made > in guile. Usually I spend time testing some python submodule and in the > process realizes issues with the current code base. I'm certain that there > is quite a lot of bu

Re: python-on-guile

2020-02-18 Thread david larsson
On 2020-02-18 20:05, Stefan Israelsson Tampe wrote: This looks like problems loading the stis-parser module, can you add that manually to the load list as well? test to see that you can do (use-modules (parser stis-parser lang python3-parser)) Regards Stefan That did it, thanks! It compiles

Re: python-on-guile

2020-02-18 Thread david larsson
On 2020-02-13 08:41, Stefan Israelsson Tampe wrote: Hmm, seams guile has a problem finding guile-persists modules, as you would probably get the same error if you do (use-modules (persist persistence)) Try source the guile-persist and add it to the load path directory (you probably need to do th

Re: python-on-guile

2020-02-12 Thread david larsson
On 2020-02-12 21:14, Stefan Israelsson Tampe wrote: I saw from the stacktrace that the repo uses a not available module. I dried to fix that and missed pushing it. I agave now pushed so you could try to pull and compile again Yep, now it works. guile-persist builds on commit 751c8834b401e81b6e

Re: python-on-guile

2020-02-12 Thread david larsson
On 2020-02-12 18:18, Stefan Israelsson Tampe wrote: you should update the guile-persist repo and also stis-parser, there was some cond-expand issues in those as well Ok. I tried that. stis-parser now built fine on commit 8d49401e238ae703a466b5b98d3068e4fa974f2c but guile-persist failed on ma

Re: python-on-guile

2020-02-12 Thread david larsson
On 2020-02-12 10:59, Stefan Israelsson Tampe wrote: no code for module (persist persistance) can you use (persist persistance) e.g. from the guile shell, (use-modules (persist persistance) ) Nope, that gives the same error. I had some issue when compiling the stis-parser and/or guile-per

Re: python-on-guile

2020-02-12 Thread Stefan Israelsson Tampe
no code for module (persist persistance) can you use (persist persistance) e.g. from the guile shell, > (use-modules (persist persistance) ) ... /Stefan On Wed, Feb 12, 2020 at 10:18 AM david larsson wrote: > On 2020-02-11 21:57, Stefan Israelsson Tampe wrote: > > This error is fixed in r

Re: python-on-guile

2020-02-12 Thread david larsson
On 2020-02-11 21:57, Stefan Israelsson Tampe wrote: This error is fixed in repository /Stefan Thanks. That solved that part. Now Im getting this error on make: (commit 226d33163e7f1e305c0b6e2ada37209513377dff) -- Makefile:1390: warning: overriding recipe for target 'python

Re: python-on-guile

2020-02-11 Thread Stefan Israelsson Tampe
This error is fixed in repository /Stefan On Tue, Feb 11, 2020 at 8:17 AM david larsson wrote: > On 2020-02-10 21:11, Stefan Israelsson Tampe wrote: > > I have now added the bytes constructor that was not working. > > Thanks! > > > > > To compile from source please try use the git repository at:

Re: python-on-guile

2020-02-11 Thread Stefan Israelsson Tampe
Good that you are trying end test it for guile 2.2, there is a missing part in a cond-expand e.g. code that expands differently for different versions. I am currently at guile 3.0.0 . I'll fix it when I get home tonight. Regards Stefan On Tue, Feb 11, 2020 at 8:17 AM david larsson wrote: > On 2

Re: python-on-guile

2020-02-10 Thread david larsson
On 2020-02-10 21:11, Stefan Israelsson Tampe wrote: I have now added the bytes constructor that was not working. Thanks! To compile from source please try use the git repository at: https://gitlab.com/python-on-guile/python-on-guile/ see readme for how to compile and what dependencies you

Re: python-on-guile

2020-02-10 Thread Stefan Israelsson Tampe
I have now added the bytes constructor that was not working. To compile from source please try use the git repository at: https://gitlab.com/python-on-guile/python-on-guile/ see readme for how to compile and what dependencies you have. Regards Stefan On Mon, Feb 10, 2020 at 1:14 PM david larss

Re: python-on-guile

2020-02-10 Thread Stefan Israelsson Tampe
>Im getting weird results when trying to output the base64 representation >>of a string, take btest.py: > #import sys > import base64 > def mybmethod(x): > mybytes = bytes(x, "utf-8") > encodedbytes = base64.b64encode(mybytes) > myb64string = str(encodedbytes, "utf-8") >

Re: python-on-guile

2020-02-10 Thread Stefan Israelsson Tampe
> (use-modules (a b c)) did not work for me, except to load modules > already shipped with python-on-guile repo; (language python module > python) etc. You need to specify a root to search for for guile modules, try using e.g. https://www.gnu.org/software/guile/manual/html_node/Load-Paths.html /S

Re: python-on-guile

2020-02-10 Thread david larsson
On 2020-02-09 21:36, Stefan Israelsson Tampe wrote: in sys that is On Sun, Feb 9, 2020 at 9:36 PM Stefan Israelsson Tampe wrote: OKey, I changed the values from immutable lists to lists. Great! On Sun, Feb 9, 2020 at 9:27 PM Stefan Israelsson Tampe wrote: Note that a lot of things are

Re: python-on-guile

2020-02-09 Thread david larsson
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 (curre

Re: python-on-guile

2020-02-09 Thread Stefan Israelsson Tampe
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 pla

Re: python-on-guile 1.0 and guile-persist 1.0

2019-07-09 Thread Nala Ginrut
Great work! Thanks Stefan! Stefan Israelsson Tampe 于 2019年7月10日周三 03:19写道: > With documentation in place and finishing the latest persistant tasks I now > release python-on-guile 1.0.0 and guile-persist 1.0.0 > > Source: > https://gitlab.com/python-on-guile/python-on-guile/ > > Doc: > http://www

Re: python-on-guile

2019-06-26 Thread Nala Ginrut
Thanks for the work! I appreciate it! On Sat, Jun 15, 2019 at 3:05 AM Stefan Israelsson Tampe wrote: > > python on guile has reached quite far and now compiles a lot of the standard > python code base. The speed has not been of importance. Rather to get good > coopertion between guile scheme an

Re: python-on-guile

2019-06-22 Thread Arne Babenhauserheide
Stefan Israelsson Tampe writes: > python on guile has reached quite far and now compiles a lot of the > standard python code base. The speed has not been of importance. Rather to > get good coopertion between guile scheme and python programs. That sounds awesome! Thank you for sharing! > https

Re: python on guile

2014-08-13 Thread Jan Wedekind
Hi, In the past I have looked at how Python's NumPy and Ruby's NArray are implemented. I then implemented Ruby multiarray (one of the HornetsEye libraries). The point is that ultimately you want a flexible library for umiform arrays with a JIT compiler to match the exressiveness of Guile/Scheme.

Re: python on guile

2014-08-12 Thread Nala Ginrut
On Sat, 2014-08-09 at 14:58 +0200, Federico Beffa wrote: > > On Fri, 2014-05-30 at 23:33 +0200, Stefan Israelsson Tampe wrote: > >> I would like to hijack the python2/3 community over to guile. > > Hi, I'm a user of python which would very much prefer to use Scheme :-) > > I just wanted to say th

Re: python on guile

2014-06-02 Thread Nala Ginrut
On Fri, 2014-05-30 at 23:33 +0200, Stefan Israelsson Tampe wrote: > I would like to hijack the python2/3 community over to guile. Oh~I could be your accomplice~ ;-P > A first step > is a parser, it > is ontop of guile-log so you might disslike it, but that can be changed > later. I've rewritte