IRC channel logs


back to list of logs

<leoprikler>avp_: You can document generics (including accessors) in the code itself and snarf it, but for slots you'll have to manually write them (assuming you use slots without accessors)
<leoprikler>Also have a look at (texinfo reflection)
<soda__hobart>with ice-9 match, what is the argument for the predicate func in the (? predicate pat_1 ... pat_n) pattern? is it each item or the entire list?
<leoprikler>(match '(a b c) ((? pair? (a b c)) a))
<leoprikler>I hope this answers your question :)
<leoprikler>Interstingly, you can also do (= pair? a) to get #t :)
<ft>Also, maybe: (match '(a b c) ((? (lambda (x) (format #t "-> ~a~%" x) #t) (a b c)) a))
<leoprikler>the predicate is evaluated on the entire things
<leoprikler>that's why you have to write cute to smuggle other stuff in :P
<soda__hobart>bluh, i had this figured out before and i forgot haha
<soda__hobart>i have some relations with logic variables that start with a "?" and i'm trying to pick them out
<leoprikler>leading question marks sound like your asking for trouble (and make it double)
<soda__hobart>haha yeah, they're just strings though
<soda__hobart>it's all just strings at the end of the day, and they're all going to the same place
<leoprikler>now you've lost me
<soda__hobart>it's a bad joke, but i mean binary is just string operations, basically, right?
<leoprikler>if you mean, that you can implement a binary turing machine in terms of label rewriting systems, then yeah, but I think you might be going for something else?
<soda__hobart>mathematical formalism or something?
<leoprikler>explain what you mean when you say "binary is just string operations"
<soda__hobart>like at low-level, the instructions and data and stuff are arrays of bits or whatever, which is like a string?
<leoprikler>well, at the lowest level, binary can be just a single bit, which a string can't
<soda__hobart>what about a string in the abstract sense of the term?
<soda__hobart>it can't be a single piece of information?
<leoprikler>well, by its very nature, a string is more than a single piece of information
<leoprikler>it is at least two: where to start, and where to end
<leoprikler>although where to end can sometimes be confusing :P
<soda__hobart>haha yeah i'm gonna have to go read gödel or wittgenstein or something
<leoprikler>Well, Gödel talks about numbers at great lengths, you can even reduce strings to numbers if you really want to.
<soda__hobart>yeah, i was helping my roommate study for a placement exam the other day and we were reviewing factoring polynomials and i guess it is a string operation basically
<leoprikler>back to the original question, what is "just a string" in your context? the variable name?
<soda__hobart>oh yeah, i have an alist with bindings in it, and the keys are strings
<leoprikler>"bindings" as in procedures generated through FFI/Schmutz/what have you?
<soda__hobart>no, bindings just as in bound variables
<soda__hobart>i'm evaluating each term in a clause, like it's a really simple prolog-style rule language
<leoprikler>so you have rules like "string-operation BINARY_ARITHMETIC."
<leoprikler>"string-operation INTEGER_FACTORIZATION"
<leoprikler>oops, missing the dot
<leoprikler>"string-operation HALT."
<soda__hobart>no, i suppose i could, but my domain doesn't really require those
<soda__hobart>it is not quite a life-or-death thing, i'm just trying to make a crude framework for using an equally crude clausal language for making 2d games... but i've been reading a lot of cool books like norvig's PAIP and this algorithms textbook
<civodul>hey wingo
<dsmith-work>Monday Greetings, Guilers
<lloda>remind me how to exit the Guile repl from any number of nested prompts other than exiting from each one in sequence
<RhodiumToad>exit the repl, or the whole process?
<RhodiumToad>(primitive-exit) works to exit the process, but I think everything else is caught and only unwinds one level
<leoprikler>raghavgururajan: I have great trouble parsing your table. It looks like everything is up-to-date? :D
<raghavgururajan>leoprikler: Its a navigation list for where to start and where to end.
<srandon111>hello guilers!
<stis>tja guilers!
<jlicht>Seeing as OpenAPI/Swagger is hip and happening, does anyone here know of ways to create and/or consume specs for it in guile?
<lle-bout>hello has behavior changed in incompatible ways between Guile 3.0.2 and 3.0.5?
<dsmith-work>lle-bout: Look in the NEWS file. Changes are documented there.
<dsmith-work>Sure would nice if the NEWS file
<dsmith-work>"Changes in xxx (since yyy)" had the top level *.
<dsmith-work>Then it would be much nicer to view with org-mode
<lle-bout>dsmith-work: thanks but does it mean major versions of GNU Guile can introduce incompatible changes?
<dsmith-work>lle-bout: I belive that's the goal, but sometimes mistakes happen. And other times there is no other way to fix something.
<dsmith-work>lle-bout: I'm sure the devs try very hard not to let that happen.
<lle-bout>dsmith-work: basically GNU Shepherd with GNU Guile 3.0.5 doesnt work and I'm trying to fix it
<dsmith-work>Well, the only onces I see are:
<dsmith-work>`call-with-output-string' closes port on normal exit
<dsmith-work>`copy' read-option removed
<dsmith-work>lle-bout: What doesn't work?
<lle-bout>dsmith-work: the test suite, here's logs: - I don't know GNU Guile's Scheme much..
<lle-bout>I verified that with GNU Guile 3.0.2 it works, but not 3.0.5
<lle-bout>raghavgururajan: about to rebase, so next time git pull --rebase
<lle-bout>raghavgururajan: no big deal it's just the commit is the same now I guess, don't know if you rebased or cherry-picked
<lle-bout>raghavgururajan: looking at shepherd btw
<lle-bout>oops sorry wrong channel