IRC channel logs

2015-05-13.log

back to list of logs

<paroneayea>but it's more than "just elisp" :)
<cluck>echo "i can haz elisp" >>> #<buffer #guile@freenode>
<cluck>:D
<kelledin>so...
<kelledin>i'm in a bit of an oddball situation
<kelledin>i'm on a mips64 platform, building guile for n32 ABI
<kelledin>i already had to fix a couple of things, because libguile/foreign.c incorrectly assumes that sizeof(void *)>=sizeof(ffi_arg)
<kelledin>however, foreign.test is still failing with "procedure->pointer: qsort - arguments: ((null-pointer-error "pointer->bytevector" "null pointer dereference" () ()))"
<kelledin>(this test failure does NOT occur if I build for n64 ABI)
<civodul>kelledin: which Guile version is it?
<kelledin>civodul: 2.0.11
<civodul>in Guix we build 2.0.11 in mips64/n32
<civodul>it works fine AFAIK
<kelledin>civodul: big-endian or little-endian?
<civodul>LE
<civodul>you?
<kelledin>that could be another sticking point then. i'm on big-endian
<civodul>could be
<civodul>mark_weaver has access to a mips64el box, might be able to help
<kelledin>the test-ffi failures (fixed by my current patchset) probably would't have occurred on LE, since the broken code would be lucky enough to get the right half of the return value
***karswell` is now known as karswell
<paroneayea>bipt: I guess I'm still unsure about what to do to adjust the path, if anything
<mark_weaver>kelledin: our mips port is mips64el, little endian
<mark_weaver>oh sorry, I was thinking this was #guix
<mark_weaver>I haven't tried guile on a big-endian mips machine
<mark_weaver>the only big endian machine I use it on is my sparc system
<bipt>paroneayea, i'm not sure either :) i'm trying something though
<bipt>paroneayea, ok, try it now :) i'm testing your package with commit 41120e0f595b16387eebfbf731fff70481de1b4b
<bipt>also i had to add (add-before 'configure 'fix-/bin/pwd (lambda _ (substitute* (find-files "." "^Makefile\\\\.in$") (("/bin/pwd") "pwd")))) to the emacs modify-phrases form
<paroneayea>bipt: cool
<paroneayea>bipt: great, trying that
<paroneayea>bipt: what's the hash of that input?
<paroneayea>as in, the hash that guix checks
<bipt>i'll know when guix fails :p
<paroneayea>bipt: I can generate it now
<paroneayea>bipt: btw, to generate the hash
<paroneayea>clone the repo to the commit you want
<paroneayea>then remove the .git directory
<paroneayea>then guix-enable if you haven't already
<paroneayea>and "guix hash -r emacs"
<paroneayea>that'll give you the hash
<bipt>paroneayea, thanks, i knew there had to be a better way to do that
<paroneayea>:)
<paroneayea>bipt: it's 0lvcvsz0f4mawj04db35p1dvkffdqkz8pkhc0jzh9j9x2i63kcz6
<mark_weaver>the phase that bipt suggested is already in our emacs package, but the guile-emacs package overrides the 'arguments' field and dumps it.
<paroneayea>mark_weaver: oic
<mark_weaver>rather that duplicating it, it would be better to inherit those arguments and only add a new phase
<paroneayea>mark_weaver: hm, so how would I do that, do you suggest?
<paroneayea>I imagine one could do modify-phases on it
<mark_weaver>using 'substitute-keyword-arguments'. see the gcj-4.8 package for an example
<paroneayea>mark_weaver: excellent, thanks
<mark_weaver>np!
<mark_weaver>paroneayea: however, in this case you can just use (package-arguments emacs) as the first operand of 'substitute-keyword-arguments'
<paroneayea>bipt: compiling, let's see what happens!
<paroneayea>mark_weaver: I'll make those changes after this compile runs
<mark_weaver>okay
<paroneayea>wanna see if this works first :)
<mark_weaver>sure, we can clean it up later
<paroneayea>bipt: I'm excited that you're helping with this
<paroneayea>getting something guix compilable is good proof that someone else can reproduce your setup top to bottom :)
<paroneayea>(as it's been good proof to me that mediagoblin has work to do ;))
<bipt>getting the same regexp-opt error :/ maybe it will build with --cores=1
<mark_weaver>add #:parallel-build #f to arguments for that
<mark_weaver>#:parallel-build? #f I mean
<bipt>thanks mark_weaver
<bipt>paroneayea, it worked :D
<mark_weaver>woohoo! :)
<paroneayea>bipt: oooooh whoooo! :)
<paroneayea>bipt: compiling here
<paroneayea>bipt: I assume the path thing still needs adjustment?
<paroneayea>and thaks mark_weaver !
<paroneayea> *
<paroneayea> o/ \\o_ POWER HI-5
<paroneayea>/| |
<paroneayea>/ \\ / \\
<mark_weaver>:)
<paroneayea>bipt: btw, I guess many primitives aren't auto-available in guile's emacs-lisp? :)
<paroneayea>scheme@(guile-user)> ,m emacs-lisp
<paroneayea>scheme@(emacs-lisp)> (+ 1 2 3)
<paroneayea><unnamed port>:2:0: In procedure +:
<paroneayea><unnamed port>:2:0: In procedure module-lookup: Unbound variable: +
<paroneayea>;)
<bipt>paroneayea, it's fine now, i fixed the load-path setting
<bipt>paroneayea, ITYM ",L emacs-lisp", guile's elisp has +
<paroneayea>ahhh
<paroneayea>,L elisp
<paroneayea>yeah
<paroneayea>there we go
<paroneayea>thanx bipt :)
<bipt>np
<mark_weaver>paroneayea: can you paste your current recipe?
<paroneayea>mark_weaver: yup
<paroneayea>mark_weaver: http://pamrel.lu/c5dac/
<mark_weaver>thanks!
<mark_weaver>does that paste service provide a way to get the raw file?
<paroneayea>mark_weaver: http://pamrel.lu/c5dac/raw/
<paroneayea>it also has an emacs mode, which I wrote :)
<mark_weaver>ah, nice!
<paroneayea> https://github.com/cwebber/pamrel-el sorry for github link
*paroneayea shakes finger at self
<mark_weaver>hmm, that raw file has DOS line endings.
<paroneayea>ok hold on
<paroneayea>pasting to paste.lisp.org
<paroneayea>mark_weaver: http://paste.lisp.org/+36CD
<mark_weaver>thanks!
<paroneayea>compiling away....!
<nalaginrut>morning guilers~
<paroneayea>hi nalaginrut
<nalaginrut>heya
<paroneayea>bipt: did it finish compiling for you? it seems to have halted here for me:
<paroneayea>Cannot open load file: No such file or directory, ../../../source/test/automated/inotify-test.elc
<paroneayea>ERROR: inotify-test.log
<bipt>paroneayea, oh, i disabled tests
<paroneayea>bipt: oic :)
<paroneayea>bipt: trying again
<paroneayea>bipt: did it complete for you?
<paroneayea>and did you have to do any path-fu yet?
<mark_weaver>paroneayea: btw, the preferred way to disable tests is to add #:tests? #f to arguments, not by deleting the check phase
<paroneayea>mark_weaver: yeah, you told me that in #guix... I just made the change :)
<paroneayea>for both :)
<mark_weaver>paroneayea: actually, that was davexunit who told you that :)
<mark_weaver>(I didn't remember, so checked the log to see if I was going senile :)
<paroneayea>oh so it does :)
<paroneayea>er
<paroneayea>so he did :)
<paroneayea>so it was
<paroneayea>so it words
<paroneayea>ok compiling again!
<bipt>paroneayea, yes, no problems compiling and installing, and the load-path handling works
<paroneayea>bipt: woooo
<paroneayea>bipt: ttp://paste.lisp.org/+36CH so yours looks roughly like so?
<paroneayea>er
<paroneayea>bipt: http://paste.lisp.org/+36CH so yours looks roughly like so?
<bipt>yes
<paroneayea>great!
*paroneayea sets his computer to compile away and preps for bed, hoping to wake up to a guix compiled guile-emacs!
<paroneayea>bipt: mark_weaver: if it works right, I'll submit an updated patch to the guix list in the morning
<bipt>paroneayea, excellent :)
<paroneayea>bipt: mark_weaver: thank you both for all your help on this... and especially bipt for making guile-emacs happen generally!
<bipt>paroneayea, thank you for all your work on this package!
<bipt>i just triggered a segfault in libgc, but i think i'll wait til tomorrow for debugging :)
<paroneayea>:)
***michel_mno_afk is now known as michel_mno
***jalle is now known as jockej
<civodul>Hello Guilers!
***michel_mno is now known as michel_mno_afk
***michel_mno_afk is now known as michel_mno
<ArneBab_>I am new to using geiser, and I’m surprised that geiser-eval-buffer takes several seconds. Is it conventional usage or am I missing something?
<davexunit>that doesn't sound right
<ArneBab_>could it be connected to slow file IO? (I have a problem with that when I let my emacs run for weeks - which is what I do)
<paroneayea>ArneBab_: it shouldn't happen, though I've had that happen before myself
<paroneayea>in such cases I've killed the guile repl buffer inside of emacs and started it again
<paroneayea>and it was fine
<paroneayea>I don't know why though.
<paroneayea>also, hey!
<paroneayea>bipt: guile-emacs is now working in Guix here :D
<davexunit>!!
<paroneayea>oh, hey, for hilarity's sake
<paroneayea>I wonder if I can get geiser working in guile-emacs
<paroneayea>it worked with opening emacs -q.... now testing with my full .emacs, a nontrivial endeavour :)
<dsmith-work>Morning Greetings, Guilers
<ArneBab_>paroneayea: yay!
<paroneayea>heh, doesn't load my full .emacs
<paroneayea>error: Scheme error, misc-error, (#<scheme #f> #<scheme "Unbound variable: ~s"> (#<scheme #<variable 300c6b0 value: #<undefined>>>) #<scheme #f>)
<paroneayea>but my .emacs includes a loooooot of packages and configuration
<ArneBab_>paroneayea: I got init errors when starting my whole emacs, but it started.
<ArneBab_>(as guile-emacs)
<paroneayea>yes it started! it just didn't load my full .emacs
<paroneayea>it's still very impressive
<paroneayea>and generally things seem to work.
<adhoc>wow
<paroneayea> http://dustycloud.org/tmp/guile-emacs-20150513.png guile-emacs from guix, in action
<paroneayea>davexunit: adhoc: in case seeing is believing :)
<davexunit>paroneayea: amazing :)
<dsmith-work>Bah. guile-emacs failed configuring emacs for me because of missing X dev packages.
<paroneayea>dsmith-work: well, it does require gtk and etc at present
<paroneayea>there's a guide on emacswiki on how to set it up, if you don't want to use the guix package i'm submitting:
<paroneayea> http://www.emacswiki.org/emacs/GuileEmacs#toc3
<paroneayea>should have what packages you need
<dsmith-work>git question: When you initally have a clone with something like --depth=1, how do you do a pull without getting the whole repository?
<dsmith-work>--update-shallow perhaps?
<taylanub>dsmith-work: AFAIUI it won't pull the whole repo but it will mandatorily pull commits it didn't pull before iff the new commits it pulls build upon changes from older commits
<taylanub>but my git knowledge is rusty
<taylanub>(rather, it was never good)
<dsmith-work>taylanub: That with --update-shallow?
<dsmith-work>Because a bare pull seemed to grab the whole history
<taylanub>hmm, maybe it dumbly pulls everything when it notes any single commit to be missing, which it needs? http://stackoverflow.com/questions/23986685/ seems to imply such a thing, recommending an arbitrary >1 value for --depth to work around it.
<ArneBab_>is there a function which sorts lists of strings alphabetically?
<dsmith-work>sneek: guile help sort
<sneek>`sort' is a procedure in the (guile) module.
<sneek>- Scheme Procedure: sort items less
<sneek> Sort the sequence ITEMS, which may be a list or a vector. LESS is
<sneek> used for comparing the sequence elements. This is not a stable
<sneek> sort.
<taylanub>ArneBab_: (sort string-list string<?) or so?
<taylanub>ooh, new bot feature?
<dsmith-work>taylanub: Been there for years
<taylanub>hah, never knew
<dsmith-work>So what is the difference between string< and string<?
<dsmith-work>One returns "a true value" and the other #t
<taylanub>their documentation explains the real differences. the ? variant takes many strings, the other takes start/end index arguments for the two strings it takes
<dsmith-work>Ahh
<taylanub>the non-? ones seem to be from SRFI-13. maybe the others were in Guile before SRFI-13...
<dsmith-work>Probably
<dsmith-work>Unless that's R6RS ?
<ArneBab_>taylanub: string<? sounds like what I need - thanks!
<taylanub>dsmith-work: you're right
<taylanub>such a mess :(
<taylanub>(not R6RS specifically, just the general situation...)
***michel_mno is now known as michel_mno_afk
<dsmith-gemacs>bipt: Whoo
<dsmith-gemacs>I'm using the following modules: erc-track-mode, erc-track-minor-mode, erc-stamp-mode, erc-ring-mode, erc-readonly-mode, erc-pcomplete-mode, erc-noncommands-mode, erc-networks-mode, erc-netsplit-mode, erc-move-to-prompt-mode, erc-message-english-flood-strict-mode, erc-menu-mode, erc-match-mode, erc-list-mode, erc-irccontrols-mode, erc-fill-mode, erc-button-mode, erc-autojoin-mode!
<dsmith-gemacs>I'm using ERC Version 5.3 with GNU Emacs 24.4.50 (x86_64-unknown-linux-gnu, GTK+ Version 2.24.25, multi-tty) of 2015-05-13.
<dsmith-work>Hmm. Doesn't say guile though.
<ArneBab_>dsmith-work: nice!
<ArneBab_>I’m now using Guile Scheme (with parens, want to get a feeling for them ☺) to orchestrate my plotting scripts (run the scripts to retrieve the data I need, store it, then run the plot scripts).
<ArneBab_>being able to just use lists of symbols makes the code a lot more readable. example: '(2009-04-03 2012-04-03)
<ArneBab_>^ defines the timeframe to use
<ArneBab_>It gives me the feeling for the amount of visual overhead I was used to in Python.
<ArneBab_>there I did it like this: ["2009-04-03" "2012-04-03"]
<zacts>hello guilers
***mario-go` is now known as mario-goulart`
<adhoc>paroneayea: so building from guix?
<adhoc>paroneayea: i found http://www.emacswiki.org/emacs/GuileEmacs and started building
<adhoc>but various tools are dated, like automake...
<paroneayea>adhoc: dated?
<paroneayea>adhoc: automake still runs fine
<paroneayea>not my favorite software to wrangle with, but
<adhoc>wants 1.12, i have 1.11.x
<adhoc>paroneayea: you have a link to a build method with guix ?
<adhoc>i need to get my head around these tools for other projects
<adhoc>but not today =)
<adhoc>i really would like to tinker with geiser and guile-emacs though =)
<paroneayea>adhoc: http://dustycloud.org/blog/guix-package-manager-without-make-install/
<paroneayea>seems to be my most referenced blogpost in some time, based on IRC linkage :)