<b4283>nalaginrut: is 74 good or bad? <nalaginrut>b4283: I believe it's around 64 these months everyday <b4283>that means ppl interested in guile had increased, yay <nalaginrut>I'm glad to see that SMOB is going to be obsoleted, it's hard to play with it <zacts>I can't wait until nalaginrut's guile web server takes off. <zacts>I want to convert my blog to use it <nalaginrut>zacts: you mean Artanis? or Ragnarok? anyway, my brand new server design will appear in Artanis soon <zacts>for now I'll use chicken eggs <zacts>but I would rather use guile, I like guile better <nalaginrut>I have to do so, because something in webframework better to handle in server, like limit uploaded file size <nalaginrut>no mention websocket, so I have to add a new server to Artanis <nalaginrut>zacts: the site of Artanis is also built with hyde of Chicken <zacts>nalaginrut: my site is static <zacts>except I would love to use guile/chicken to parse my markdown <nalaginrut>zacts: I wish there's a markdown parser in Artanis, but now there're lot of higher priority work for it <ZombieChicken>has anyone here compiles a static guile and used it in an initramfs for the init script? <mark_weaver>ZombieChicken: GNU Guix produces demo VM images with Guile as PID 1. I don't recall if it's static or not. <zacts>mark_weaver: I'm seriously considering posting my FreeBSD guile patches in their current form for someone else to finish my work. <zacts>also, I have some other projects that are interesting me more, and are more high priority, and I may be a bit busy with catching up on my college math this summer thru the winter. <zacts>I'll post a link with the patches here probably.. <zacts>and possibly on the mailing list <zacts>btw, can I send attachments on the mailing list? <ZombieChicken>Are the files in /usr/lib64/guile/2.0/ccache/ and /usr/share/guile/2.0 required for guile to operate? <ZombieChicken>I'm thinking of putting guile 2.x into my initramfs so I can write my initfile in it <ZombieChicken>and I wanted to double-check so I didn't go through the trouble of compiling a static guile and all that fun crap just to have it fail because it was missing required files <civodul>so basically yes, you need all these files and a statically-linked Guile <civodul>you also need to make sure libgc doesn't require /proc <civodul>it's OK with recent versions, otherwise you need to build it with CPPFLAGS=-DUSE_LIBC_PRIVATES <wingo>hey civodul, did you have any thoughts on the foreign objects facility? <civodul>wingo: you're referring to a message? <wingo>so you're not really behind :) ***wleslie is now known as markov-kosh
***markov-kosh is now known as wleslie
<wleslie>echo "int main () { printf(\\"Usage: ... " > README.c <lamefun>is syntax case the only way to access contents of syntax objects? <lamefun>(datum-syntax x (syntax-datum x)) is the same as x? <taylanub>not sure about that, might want to check out R6RS and/or the Guile manual <lamefun>also is there a less annoying record syntax that would define accessors automatically like get-record-field <atheia>lamefun: you could try your luck with r6rs syntactic records <atheia>Afaik they allow accessors etc. to be optionally specified and to generate them automatically otherwise. <ijp>atheia: if names are not given, they get generated according to the usual pattern <ijp>there's also other bells and whistles, some dubious, some less so <ijp>lamefun is gone, but I would intuitively think that (datum->syntax x (syntax->datum x)) would be a the same as x, although probably not eqv? or equal? <taylanub>Is source data in syntax objects ? If so, those would probably be lost. <ijp>hmm, maybe not, because syntax->datum strips info recursively, whereas datum->syntax seems like a one level thing <taylanub>hrm, was there a separate procedure that does one-layer stripping of syntax ? <ijp>frankly, I can't think of any reason why you would organise your code in this manner, though <madsy>I wonder, in larger Guile projects, do people turn everything into modules and load them with (use-module), or do they use (load)? <ijp>it usually makes more sense to use modules <ijp>for a start, load *technically* does not work with macros <amirouche>I'd like to rewrite the following sexp (guile.is.a.super.language) to (guile is a super language) <amirouche>Also, if it doesn't require me to prepend every dotted name with somthing, like I pull a switch and all dotted names are converted <taylanub>amirouche: foo.bar is just a symbol like any other, you can "process" it into another symbol by turning it into a string with symbol->string, doing your changes, then getting back a symbol with string->symbol. <amirouche>but how can I make it a global behavior of the parser <amirouche>there is an attachment and I explain the thing *taylanub has never seen # for quotation in e-mail before <taylanub>It's a little long, I tried to skim it, am I right in that you just want to write code like that for the sake of visual appeal ? <wingo>"foreign objects" is apparently the thing :) <taylanub>amirouche: if so, that's very non-standard and a bit crazy IMO, you might want to look into SRFI-105 instead which would allow e.g. {foo[bar][baz][bat]} to turn into something like ($bracket-access$ foo bar baz bat) <amirouche>taylanub: sorry If you feel stalked, but do you know all SFRIs? *taylanub despises "readable" sexprs :) should start an "unreadable" movement to oppose them :P (SRFI-105 is fine, and the sanity limit IMO) <amirouche>I kept looking for this thing and was always redirected to SFRI-110 which propose a indentation based syntax + curly-infix-notation <amirouche>without parents the expressions seems "unbound" somehow <taylanub>yeah, that's the extension to 105. to be precise, they started the "readable" project separately (originally called "sweet expressions"), which was split into a couple stages building up on each other, then they started to specify those parts as SRFIs <ijp>dsmith-work: (ice-9 immigrants) <ijp>I come from the land of the ice-9 and snow, from the midnight sun where the hot springs blow <ijp>they come over here, use our memory, steal our locks,.... <civodul>wingo: you've written all this doc already, woow! <wingo>i wrote it today, but it was mostly based on the smob doc :) <wingo>probably the example can be trimmed down *wingo spreads fud about finalizers and mark procedures :) <daviid>wingo: nice, and the doc is really clear, well done! ***fangism-ctrl-Z is now known as fangism
***wingo_ is now known as wingo
<davexunit>wingo: foreign structs look great, but I have a (probably unfounded) concern about the overhead it introduces by using GOOPS. <davexunit>GOOPS turns procedures like + into methods, afaik. <wingo>davexunit: that's not really the case <wingo>the + vm opcode always dispatches to scm_sum in the case of non-fixnum types <wingo>and scm_sum always branches down to the generic case if it doesn't handle the type <wingo>and if the generic case is that + has not been turned into a primitive-generic, then at that point an error is raised <wingo>but if it is a generic, only then does it dispatch to the + generic <wingo>so there is no runtime overhead for normal arithmetic <davexunit>foreign structs look great. I've been desiring an API like this for writing wrappers. <wingo>basically primitive-generics are a way to specify what happens when a primitive fails to apply <davexunit>the docs are really good, too. lots of examples. <wingo>it's possible to backport as well, importing locally into your project -- there are a couple bugs to work around, but it's doable <wingo>tx, though i stole most of them from the smob docs :) <ijp>zacts: you asked a short while back how I can read so much? ***develo is now known as naboo
<naboo>hello, i learn guile-ncurses and need to write code with internationalization, could anyone tell me where should i start with it? <taylanub>naboo: maybe (info "(guile) Gettext Support") <naboo>taylanub: and what about wide characters in code? <taylanub>naboo: Guile is fine with UTF-8 source code <civodul>it can also do textual I/O in any encoding <naboo>taylanub: yes i mean utf-8 source code, but i have some troubles with utf-8 strings when i run script on my console using guile-ncurses <naboo>instead of ł or ó i get ? and ? <ijp>ncurses + unicode sounds like a recipe for trouble <taylanub>naboo: could that be a problem of your terminal ? <naboo>or if i use (setlocale LC_ALL "") some other <naboo>my terminal is bash in new Debian <naboo>so terminal is not a problem <civodul>naboo: you need that (setlocale LC_ALL "") call to tell Guile to use locale encoding for ports by defautl <naboo>civodul: i use it, as wrote above <ijp>I have an odd suspicion that guile-ncurses does not use wide character support <naboo>ijp: that is sad, great tool and i can't write polish characters :( <civodul>naboo: does (display "λ") do the right thing? <rlb>wingo: one note about the file desrcriptor example -- you might also consider emphasizing that freeing that kind of resources via a finalizer should be a last resort, i.e. the normal case should be explicit (or implicit via with-foo) cleanup. <ijp>hmm, I see some functions that indicate it was implemented, so I might be wrong <ft>I'm pretty sure you can build guile-ncurses with ncurses-wide <rlb>i.e. at a minimum make sure your "foo" has some way to clean it up other than the finalizer. <civodul>naboo: then yes, could be a ncurses issue <naboo>so i need to look into configure help of guile-ncurses <naboo>i'll check if it do the thing <civodul>when that happens, one must shout: "Guile is great!" <ijp>when it doesn't work, you shout it four times, and louder <naboo>heh (Guile is great!) (Guile is great!) :D