IRC channel logs


back to list of logs

<jralls>Has anyone successfully built guile 2.0.11 on OSX Yosemite with x86_64? I'm having trouble with crashing while compiling srfi-19. The error is "stack_not_16_byte_aligned_error", and there's no stack trace in the crash report.
<mark_weaver>jralls: can you email about it?
<mark_weaver>sneek: seen jmd
<sneek>I last saw jmd on May 03 at 01:43 am UTC, saying: It would be worth considering..
<mark_weaver>sneek: seen mark_weaver
<sneek>mark_weaver was here Dec 13 at 07:10 am UTC, saying: sneek: seen mark_weaver.
<taylanub>jralls: I think cky built guile's upstream stable-2.0 branch with Xcode 6.1 on OS X 10.10, and together with a small patch by him it passes the test suite too.
<mark_weaver>jralls: ah yes, taylanub is right, see: http://<Sleep_Walker> guix/packages.scm:374:17: In procedure #<procedure 47c70c0 at
<mark_weaver> guix/packages.scm:372:9 (number patch)>: [03:19]
<mark_weaver><Sleep_Walker> guix/packages.scm:374:17: Throw to key `match-error' with args
<mark_weaver> `("match" "no matching pattern" #f)'.
<mark_weaver><Sleep_Walker> guix/packages.scm:374:17: In procedure #<procedure 47c70c0 at
<mark_weaver> guix/packages.scm:372:9 (number patch)>: [03:19]
<mark_weaver><Sleep_Walker> guix/packages.scm:374:17: Throw to key `match-error' with args
<mark_weaver> `("match" "no matching pattern" #f)'.
<mark_weaver>jralls: ah yes, taylanub is right, see:
<taylanub>(for the record, I built 2.0.11 on OS X 10.9 with Xcode 6.1, so I'd guess it should build on 10.10 as well, i.e. upstream stable-2.0 shouldn't be necessary)
<mark_weaver>sneek: later tell wingo: language/cps/verify.scm:132:7: warning: wrong number of arguments to `visit-entry'
<sneek>Will do.
<mark_weaver>sneek: botsnack
<civodul>Hello Guilers!
<davexunit>morning, guilers
<mark_weaver>morning, guilers!
<jralls>mark_weaver: Unfortunately that patch didn't help.
<daviid>hello guilers, hello mark_weaver
<mark_weaver>jralls: could you email about it, so we don't forget?
<mark_weaver>hi daviid!
<mark_weaver>jralls: did you run "autoreconf -vfi" after applying cky's patch?
<mark_weaver>jralls: if not, I guess it would have no effect.
<mark_weaver>alternatively, you could patch the relevant part of the configure script directly.
<mark_weaver>oh wait, it's not there. hmm.
<jralls>mark_weaver: I'm working up the bug report now. As for the patch, I did it directly in configure.
<mark_weaver>oh yes, it is.
<mark_weaver>search for "enable_shared--$host_os" in configure
<jralls>mark_weaver: Yes it is, at line 52066.
<mark_weaver>nevermind then...
<jralls>mark_weaver: Any tips on getting a debugger on guiled?
<jralls>The OSX crash report doesn't have a useful stack trace.
<mark_weaver>jralls: run meta/gdb-uninstalled-guile
<jralls>mark_weaver: Thanks, that worked. Sort of. The stack is smashed, which explains the useless trace in the crash report.
<davexunit>does anyone know an easy way to filter the text from an input port and write it to an output port?
<davexunit>I want to read in a file and write non-whitespace chars to another file.
<civodul>you could read with get-string-n, and then iterate with string-for-each and put-char
<civodul>that's not particularly elegant or anything
<davexunit>hmm, yeah.
<davexunit>just need some way to avoid reading the whole file into a single string.
<mark_weaver>davexunit: you could use read-line from (ice-9 rdelim) to process by line, if the individual lines aren't too huge.
<davexunit>mark_weaver: yeah, I thought about that, too. I likely wouldn't run into issues with that, but I think I'll try using get-string-n with a fixed buffer size.
<davexunit>and use string-filter to remove whitespace.
<mark_weaver>sounds good.
<davexunit>I got a little sidetracked making a webpage for sly. I'm writing it as a guile program with sxml, and now I want to do some basic CSS minification.
<mark_weaver>I suppose the most elegant solution would be to read and write one character at a time, and there's no reason why that couldn't be made fast.
<davexunit>I was under the impression that reading a char at a time was inefficient.
<mark_weaver>get-string-n is reading one character at a time under the hood anyway, but that loop is in C.
<mark_weaver>when we have native compilation, it shouldn't make any difference.
<davexunit>ah okay
<davexunit>I'll just use read-char
<davexunit>trying to expand my knowledge of ports and parsing.
<mark_weaver>on guile master, if I lose the argument with wingo about locking mutexes by default, you'll want to switch to an 'read-char-unlocked', but currently there is no such thing exposed at the scheme level.
<mark_weaver>sxml reads one character at a time, fwiw.
<davexunit>thanks for the insight.
<mark_weaver>well, the implemention of it, I mean.
<mark_weaver>if I give in on that argument (not sure if I will), we'll have a module you can import to rebind 'read-char' to be an unlocked variant.
<mark_weaver>(similarly for write-char and others)
<davexunit>I'll keep that in mind.
*davexunit just found
<davexunit>wonder if this works...
<mark_weaver>nice! I've wanted something like that to complement sxml.
<davexunit>yeah, me too.
<davexunit>I want to write a static site generator for guile.
<davexunit>the only real missing piece for my needs is a markdown library.
<mark_weaver>ah yes, I remember you asking about parsing libraries for guile.
<mark_weaver>for languages that can be described with a context-free generative grammar, parser combinators seem the most elegant to me.
<mark_weaver>we should really have something like that for guile
<davexunit>yeah, the chicken scheme markdown library has them, and they look quite nice to work with.
<mark_weaver>ian grant recommended this, and he may well be right:
<mark_weaver>or you could go the super-simple route and do something like oleg did with his sxml parser.
<mark_weaver>works well enough for a relatively simple grammar like xml.
<mark_weaver>though not so elegant.
<davexunit>markdown has a lot of rules
<davexunit>xml has some of the simplicity of sexps, not markdown.
<davexunit>it's a project for another time, once the necessary libraries to make it easy are available.