<quiliro>hello... i have been fidling in the guile command line.... but i still do not understand what lambda does...i know it is an anonymous function ... that means it does not have a name... but what is its use? <quiliro>/home/quiliro/.guix-profile/share/guile/site/2.2:/run/current-system/profile/share/guile/site/2.2 ***slyfox_ is now known as slyfox
***spk121_ is now known as spk121
<kori>quiliro: you can use a lambda like this <kori>scheme@(guile-user)> ((lambda (x) (* x x)) 2) <kori>anywhere you can use a value you can use a lambda <bandali>around right now? don’t think so. you can see the list using `/msg chanserv access #guile list' and msg them whenever they’re around <dsmith>I just need someone to /kick the bot. <quiliro>but a value can be used on a let and on a define also <dsmith>The bot is "banned/quieted". Keeps trying to change it's nick back to "sneek" but is denied. <daviid>dsmith: maybe i missundertood, do you really mean to use the kick command? don't have that priviledge i think <dsmith>:livingstone.freenode.net 435 sneek_ sneek #guile :Cannot change nickname while banned/quieted on channel <dsmith>Yes. I can restart it, but I'd like to see what happens when it's kicked <daviid>str1ngs: I just pushed a patch so g-studly-caps-expand handles token exceptions <daviid>please pull/make/make check/make install, and read the doc, or the patch, then update your web-kit* class name uage to webkit-* <daviid>str1ngs: scheme@(guile-user)> (g-name->class-name "WebKitWebContext") <nalkri>Make the bot log in regardless of what nick it's on and then it should be able to change nick <daviid>and not <web-kit-web-context> anymore <daviid>if you still want that though, lok for %g-studly-caps-expand-token-exceptions in the manual <dsmith>nalkri: It's trying to change it's nick. But freenode is not letting it. <nalkri>dsmith: Identify with nickserv, then log in <nalkri>Sorry, identify with nickserv, then change nick <dsmith>The message is ":livingstone.freenode.net 435 sneek_ sneek #guile :Cannot change nickname while banned/quieted on channel' <nalkri>This channel has “+q $~a” meaning connections not identified with nickserv are quited here <dsmith>Yes, pretty sure the bot is Identifed with nickserv <nalkri>Yes, if you get it to identify with nickserv (e.g. “/msg nickserv id name pass”) it will work <dsmith>Hmm. "sneek" registers with nickserv. But "sneek_" is not. <nalkri>Right, after you log in you can group the backup nick to the account <nalkri>For now just get sneek_ to do the equivalent of “/msg nickserv id sneek <password>” <nalkri>Then look at “/msg nickserv help group” *dsmith assumes a new identity,,, ***dsmith is now known as sneek
<nalkri>You don't need to be connected with one of your registered nicks to log in, as long as you specify the nick in the id command ***sneek is now known as sneek_
***sneek_ is now known as dsmith
<dsmith>nalkri: So. The bot does register with nickserv, but did not have "sneek_" in the group. Now it does. You think that will let it change it's nick back? <sneek> 23:12:45 up 7 days, 9:47, 1 user, load average: 0.02, 0.03, 0.05 <nalkri>dsmith: Well, it wasn't identified before, maybe it tried to but with an invalid nick(because not grouped)? <dsmith>When reconnecting an getting a "*_" nick, it would attempt to get it's normal nick back. And it would just work. Something changed on freenode to prevent that. Hopfully, this grouping thing will help. <nalkri>Maybe the quiet on $~a wasn't set on this channel before <nalkri>Because it's that that was preventing a nic change ***sneek is now known as sneek_
***sneek_ is now known as sneek
***sneek is now known as sneek_
***sneek_ is now known as sneek
<rlb>dsmith-work: did you still need help? (Assuming it's something I can do.) ***chris3 is now known as chrislck
***ng0_ is now known as ng0
<str1ngs>sneek: later tell daviid, will check it out thanks. ***chris4 is now known as chrislck
<wingo>good news! i think i know of a simple transformation that will allow inlining and contification of top-level bindings, with maximum compatibility with existing guile code <weinholt>do you have any recommended reading on contification? <wingo>weinholt: i do, let me dig it out <wingo>;;; See Kennedy's "Compiling with Continuations, Continued", and Fluet <wingo>;;; and Weeks's "Contification using Dominators". <Minall>Hello guile!, I'm a little confused... <sneek>Minall, rekado_ says: You can just use “/home/Minall/Documentos/Guix-Packages” in the channel definition. <Minall>What does (define*) do?, And without the "*"? <iyzsong>Minall: 'define*' supports optional and keyworded arguments, where 'define' not. Also there is 'lambda*' and 'lambda', see more at 'lambda* and define*' of the guile manual.. <lloda>we should run a docstring marathon or snarf the texis or something. There's a ton of stuff in Guile without any inline documentation. <lloda>inline <= I mean in the repl <Minall>iyzsong: Thanks, that was very aclaratory! <dsmith>Minall: And if you meant literally (define*) as in no arguments, that's a syntax error. <lloda>also some functions do have help but it's of the aarg! sort. For example I always forget the order of args in kons in fold and the help of fold omits precisely that. <dsmith>Minall: the define* (with a star) is a guile specific <Minall>(define) is to define variables ok lol <Minall>Thanks dsmith, that's very helpful <sneek>`cons' is a procedure in the (guile) module. <sneek>- Scheme Procedure: cons x y <sneek> Return a newly allocated pair whose car is X and whose cdr is Y. <sneek> The pair is guaranteed to be different (in the sense of `eq?') from <sneek> every previously existing object. <Minall>What does @@ mean starting a parenthesis? <wingo>Minall: it's to reference a private binding in a module <Minall>wingo: Thanks!, it makes sense now! <amz3>hello all, I submitted an SRFI for hooks based on Guile, elisp and CL hooks. <amz3>I would like to know if anybody it taking advantage of the ordered nature of hooks in Guile <str1ngs>amz3: in nomad I used hooks, which are really useful especially for replicating emacs like features. though I can't say ordering has been a factor at this point. though I have thought of ordering. what is unique about guile hook order? just curious myself <amz3>str1ngs: tx for the reply. <amz3>well, the order is specified unlike the SRFI I wrote which does not specify the order of execution. <amz3>It seems to me, specifying the order of execution can lead to difficult code to debug if the user rely on the order of execution to introduce coupling between a hook's procedures. <amz3>str1ngs: btw, 10 years ago, I wrote a web browser called nomad too :) <amz3>str1ngs: it was in Python and it was a bad idea. <str1ngs>ha great minds think a like, I'm using guile I don't know if it's a good idea, but sure is fun. <amz3>str1ngs: (I tried to code the rendering engine...) <amz3>str1ngs: sure it is a good idea. <str1ngs>I think there is one hook I've been meaning to look at were ordering is a factor. And I would say order is a good idea. I'm curious if elisp is order dependent. I would think so? <str1ngs>oh rendering engine was most ambitious indeed :) <amz3>guile hooks are inspired from elisp hooks with a similar interface. They recommend against taking into account the order and the documentation doesn't tell what order it is. <str1ngs>I guess ordering is tricky, especially if they can be remove. which is one feature I have used in emacs before. <janneke>str1ngs: did you get my /query about pierre yesterday? <str1ngs>janneke: I'm just getting it now, but he was able to contact me via email <janneke>str1ngs: very good, not sure where this goes but you never know <str1ngs>I apologize for the inconvenience . I had forgot I was committing code under a email address I don't read often enough :( <janneke>str1ngs: haha, oh well pierre choses not to use irc; i'm happy he wants to talk <str1ngs>janneke: it is interesting. though somethings I'm pretty confident I wont move on. 1) guile 2) emacsy 3) GPL <str1ngs>other then that I think I can remain open <janneke>str1ngs: yeah, nomad might be able to steal ideas from next or the other way around (searching, annotating the html, bookmarks etc.) but code-wise i don't really see it tbh <str1ngs>janneke: next some good things. it's client/server model using DBUS is very intresting <str1ngs>it's flex searching is quite nice as well <str1ngs>janneke: I just noticed emacsy does avoid building hello-emacsy if freeglut is not found. so I think nly's changes have improved on this <janneke>str1ngs: yes, it's an improvement even if it's a workaround. i think it could be automatic, but i haven't had time to look into it <str1ngs>janneke: it seemed automatic. I did not need to pass --without-examples ***chris3 is now known as chrislck
<jcowan>I'd like to be interested in emacsy, if only I knew what it was for. <str1ngs>jcowan: think of emacsy as a guile library for creating emacs like interfaces <jcowan>So it's a framework (emacsy is in control and you plug your code into it)? <str1ngs>jcowan: you retain control. emacsy just provides things like buffers, key bindings, emacs like windows <jcowan>But it has the event loop, correct? <str1ngs>no you have control over the event loop. emacys uses a tick to denote the even loop. <str1ngs>jcowan: though when you call emacsy-tick it will handle events that are queued for emacsy to handle <jcowan>Sorry, what is a tick in this context? <str1ngs>jcowan: an emacsy tick is basically an increment that you call from an event or within your event loopo <str1ngs>jcowan: emacsy is for the most part pretty UI program independent. the source has examples using gtk and also GL <str1ngs>but you could just as easily use emacsy in a ncurses program as well <jcowan>Okay, so the windows are not screen windows at all. *jcowan looks up the Emacs definition of "window". <str1ngs>no screen windows in emacs are called frames <str1ngs>I think a emacs window might pre date say an X11 window <jcowan>yes, the first Emacs in 1976, the first X (not yet X11) in 1984. Of course, when Emacs ran on hardware terminals, there was barely any need of a name for the frame, since it was inherently the only frame. <str1ngs>jcowan though terminal frames are now I thing. alt east if you use something like emacsclient <sneek>Welcome back daviid, you have 1 message. <sneek>daviid, str1ngs says: will check it out thanks. <daviid>str1ngs: oh, what a mess, let me fix this, sorry!