IRC channel logs

2015-08-14.log

back to list of logs

<davexunit>you don't have to tell the racket folks that, they have immutable cons cells.
<daviid>ah! afraid to loose users I guess :)
<daviid>have to run, bbl
<ArneBab_>sneek: later tell davexunit: I like YAML a lot - the only thing it misses to get a really good representation of data structures I need are ordered dictionaries (there are parsers which do that). It’s pretty complex, though.
<sneek>Okay.
<ArneBab_>sneek: later tell davexunit: json on the other hand surprised me badly by not having numbers as keys (or rather: by automatically converting number-keys to strings). Try representing any non-string data with that. And the JSON parser in Python died with an OOM when I wanted to read a few hundred thousand values.
<sneek>Will do.
<ArneBab_>sneek: botsnack
<sneek>:)
<daviid>man, talking about mutation, just play with the autotool chain, 'cause there, you have to handle hundreds of side effects per 10 lines of code :)
***michel_mno_afk is now known as michel_mno
<amz3>héllo :)
<amz3>I successfuly loaded conceptnet using guile 2.2
<amz3>regarding the planet, I have a design and a few procedures to retrive to required data from atom files
<amz3>I will push my little demo
<amz3>so that other can have a look at the wonderful non-free design ;)
<amz3>brb
<amz3>Like I said, the background video is not free, so if there is interest in it, we will need to craft a background that is free...
<amz3> http://www.hyperdev.fr/prime/
<amz3>Feel free to comment of course
<amz3>I know it's missing important information like blog author/name date of publication
<amz3>Aslo the font is borrowed from google webfont
<amz3>it's Apache license
<amz3>it's the best serif font I know, I tried other fonts but they are not as readble as this one in a browser
<amz3>with font support
<amz3>also it has a sans serif version which can be handy
<amz3>regarding the *software* I'm looking for ways to use wiredtiger
<amz3>Right now I'm doing the tests for the target database I'd like to use
<amz3>it's "tuple space" kind of database, it's simple but it doesn't work yet
<remi`bd>amz3: the url of your font is invalid
<remi`bd>well, unless the user has NotoSerif-Regular on his/her computer
<amz3>ah sorry I'll fix that
<amz3>URW Palladio and Gentium Basic are both nice fonts that you can find in debian repositories
<amz3>NotoSerif is the one from google webfont
<amz3>listed their at list
<amz3>*least
<remi`bd>yep
<amz3>thx remi`bd make sure to Ctrl+Shift+R to reload
<amz3>btw remi`bd you did a note about your progress recently?
<remi`bd>nope
<remi`bd>but I should
<remi`bd>(the font loads well)
<amz3>I've changed the font size, it was too big for Noto
<amz3>The other style I can propose is the one I used for the old wiredtiger website http://amirouche.github.io/guile-wiredtiger/http://amirouche.github.io/guile-wiredtiger/
<amz3>sorry: http://amirouche.github.io/guile-wiredtiger/
<amz3>it's more classic while still looking a big modern
<amz3>a bit modern
<amz3>remi`bd: so does it guix gnunet work ? :)
<artyom-poptsov>amz3: IMHO using a video as a background for such a site is a bit overkill. Also it does not scales well (in my case there is a space not covered by the video at the bottom of the site.)
<remi`bd>I’m a big fan of serif for headlines and sans for body (I find it more legible); Clear Sans is my current favorite.
<remi`bd>amz3: I’ve spent the last month trying to get the downloading and publishing operations working; there was a lot of segfaults/coredumps and bugs
<remi`bd>now that (almost) everything works, I’m attempting to write a small guix script to publish parts of the store
<amz3>artyom-poptsov: If the ratio is not the same as the video I doesn't display well indeed
<amz3>remi`bd: I think it's better to have the base software working well, especially since it's seems to be difficult to enter gnunet source code, no ?
<amz3>checking Clear Sans
<artyom-poptsov>amz3: Although enabling NoScript fixes everything. ;-)
<remi`bd>the features needed for the project are working well
<amz3>artyom-poptsov: this is what people do nowdays, using videos conveying the spirit of forward looking of Guile
<amz3>remi`bd: cool :)
<remi`bd>I’d like to have something in relation to guix to present for the end of the coding period
<amz3>artyom-poptsov: that's what I was thinking, I hope people don't download the video if they use noscript
<amz3>anyway, I will mockup both design. There is little chance we use the video because it's not free, and I don't know how to "copy" that thin
<amz3>I asked the creator of the video If could use it for my personal website, he ignored me on twitter
<amz3>He is a designer, his website is super slowwwww, he adds asteroids on top of the video with somekind of effects to convey 3D thing
<artyom-poptsov>amz3: Sure I'm not against fancy designs, it they done well.
<amz3>I'll try to fix the ratio thing for the real demo
<amz3>remi`bd: will civodul be back before the end period?
<amz3>when is the end period is the correct question
<remi`bd>coding end the 21th
<remi`bd>after that, it’s the evaluation and the “documentation writing” period
<amz3>uhu there is “documentation writing” period
<amz3>that will be nice
<amz3>I don't really have time right now, but would be glad to test thing with guix/gnunet if you need help
<amz3>I mean I don't have time to develop since I'm doing the planet
<remi`bd>:D
<amz3>you will keep coding in guile afterward?
<remi`bd>of course
<amz3>ok I though you came to guile through gsoc, you knew guile before?
<remi`bd>well, I hadn’t used guile before, but I was looking for some interesting free software to contribute to
<amz3>ACTION should have tried gsoc
<amz3>it is a nice way to start contributing to free software
<amz3>it helps to start
<amz3>myself I've never contributed to a project, except freeciv for which I create a gtk theme ^^
<amz3>not bad for a coder :)
<amz3>some kind of coverage tool would be nice
<rekado_>sneek: later tell davexunit In haunt I miss a way to produce non-blog-post pages.
<sneek>Got it.
<amz3>rekado did you look at the "website" folder in haunt, it has an example on how to build the download page of haunt website
<rekado_>amz3: I cannot find it in the tarball / git repo.
<rekado_>I would like a simple builder that doesn't just operate on the site posts-directory but on a specified directory, and that only wraps the pages in a given layout.
<rekado_>I'm working on this right now, because it seems that this doesn't come with haunt.
<rekado_>oh, *there* is the link to "website"
<amz3> https://git.dthompson.us/haunt.git/blob/HEAD:/website/haunt.scm#l183
<amz3>there is that ^
<amz3>but it doesn't "crawl for pages" it "just" render a given page that is not in "post/" dir
<amz3>via (make-page) procedure it's really nice
<rekado_>yes, I'll just use (ice-9 ftw) to run through all non-post pages.
<rekado_>thanks for the hint
<artyom-poptsov>amz3: A draft of logo for Guile Prime: https://memory-heap.org/owncloud/index.php/s/P1q4XRQWbPbSuYd
<amz3>artyom-poptsov: I like it, but it would be nice if guile gnu appeared on the image
<amz3>maybe replace the arch with a gnu ?
<amz3>wdyt?
<artyom-poptsov>amz3: The "arch" should represent a lambda inside REPL.
<artyom-poptsov>But it would be nice to place a GNU head somewhere indeed. I need to think about it.
<artyom-poptsov>s/a GNU head/the Guile logo/
<amz3>it make me to think more about arch than guile
<artyom-poptsov>amz3: Heh, thanks for pointing that out. :-)
<amz3>the lambda is not obvious
<amz3>maybe it can work with the lambda
<amz3>but it should be more obvious that lambda there is ;)
<artyom-poptsov>Sure, I'll try to make the arch-lambda look more like a lambda (but a bit later).
<amz3>np
<amz3>I still to put this together, and probably a few weeks of testing, there is no hurry
<artyom-poptsov>amz3: Do you have a list of things that you want to accomplish in Guile Prime? It would be interesting to see the list if there's any.
<amz3>right now it's a simple feed aggregator
<amz3>in the end, my dream would be something in the line of some "community hub" for people using federation API
<amz3>I mean, the kind of thing paroneayea is working on
<amz3>hopefully over gnunet
<amz3>we are not there yet :)
<amz3>so it's planet
<remi`bd>when you say “federation” and “planet”, are you talking about the United Federation of Planets?
<amz3>remi`bd: yep
<amz3>remi`bd: prepare a parking slot for a type II spacecraft and coffee, me and my family are coming over
<remi`bd>Clermont-Ferrand is surrounded by sleeping volcanos, please avoid using your ion drives
<amz3>that is perfect, my brother has never seen erupting volvanos
<remi`bd>btw, what part of GNUnet do you need for your project? the distributed hash-table?
<amz3>remi`bd: I think I will use the file API, with signing if it possible
<amz3>directly
<amz3>What I did not understand, is how I can push several version of a given file ie. updates
<amz3>some one on #gnunet told me to use something but I don't remember
<amz3>I'm not sure it's available using the file API
<amz3>the thing is that I would like to keep simple and use the same API to upload large files, but if it's not possbiel I will use a different API
<remi`bd>when you publish a file in a namespace, you must give GNUnet an identifier for your file, and you can provide an “update identifier”
<remi`bd>(identifiers are simple strings)
<remi`bd>I believe when you publish a file for the second time using the same identifier and the same update identifier, the is registred as an update of the old one, and people searching for the identifier will see the update (and also the old one)
<remi`bd>yes, I just checked the code, that’s the behavior.
<remi`bd>and my bindings don’t handle it yet
<remi`bd>(not sure about this last point)
<davexunit>ACTION almost finished his JSON parser
<davexunit>just need to handle exponential notation for numbers
<sneek>Welcome back davexunit, you have 3 messages.
<sneek>davexunit, ArneBab_ says: I like YAML a lot - the only thing it misses to get a really good representation of data structures I need are ordered dictionaries (there are parsers which do that). It’s pretty complex, though.
<sneek>davexunit, ArneBab_ says: json on the other hand surprised me badly by not having numbers as keys (or rather: by automatically converting number-keys to strings). Try representing any non-string data with that. And the JSON parser in Python died with an OOM when I wanted to read a few hundred thousand values.
<sneek>davexunit, rekado_ says: In haunt I miss a way to produce non-blog-post pages.
<davexunit>rekado_: just write a builder that returns a fixed <page> object. :)
<davexunit>see the downloads page of the haunt site
<rekado_>davexunit: yup, that's what I'm doing now. It's a bit verbose, but it'll work.
<davexunit>a convenience procedure can be added
<davexunit>that takes sxml and a file name
<davexunit>and "lifts" that into a builder procedure
<rekado_>I have a whole tree of non blog post pages, so I'm using (ice-9 ftw) to process them all and wrap them in the default layout.
<davexunit>why not make them modules?
<rekado_>what do you mean by that?
<davexunit>I just make my static pages regular scheme objects assigned to variables
<davexunit>are you using sxml?
<rekado_>well, I'm converting an existing site.
<rekado_>I'm using html and skribe.
<davexunit>oh
<davexunit>okay
<davexunit>that's different
<davexunit>I think a procedure to make the relevant builder would be nice to have
<davexunit>well, I see a few procedures to add.
<rekado_>I find myself copying a lot of procedures from all over the place and make them work with pages rather than posts.
<rekado_>not sure yet how to generalise all of this.
<rekado_>have to play more.
<davexunit>why?
<amz3>(this make me think i created a few procedures, maybe someone will find them useful https://friendpaste.com/4PUaXYVp7OSuzExtBnRGAU among other things there is (path-dfs-walk path proc))
<davexunit>rekado_: surely you can use regular posts and just omit them from the blog renderer?
<dsmith-work>Happy Friday, Guilers!!
<amz3>yeah!
<daviid>happy friday!
<amz3>I found a bug in the part ofthe code I spent most time one :(
<amz3>I think I port a rust library that just do that: create lexigraphic sequence of byte for base data types
<amz3>Is there a way to catch and `error'
<amz3>?
<davexunit>amz3: do you mean "catch and rethrow error"?
<davexunit>yes
<amz3> https://www.gnu.org/software/guile/manual/html_node/Error-Reporting.html
<daviid>amz3: there is an example in the guild script, it catchs a potential error running (setlocale LC_ALL "") and sends a warning instead...
<daviid>look for (catch 'system-error ...
<amz3>thanks
<paroneayea>davexunit: I'm more and more convinced that your suggestion on how to handle json representation is right!
<paroneayea>davexunit: I also thought of a good name for it if you implement it as a separate library
<davexunit>paroneayea: :)
<paroneayea>it's json for guile right? so "jsong" or even "jaysong" (like a singing bird)
<davexunit>paroneayea: I'm going to submit it for inclusion in core guile
<davexunit>:)
<davexunit>I like jaysong
<paroneayea>davexunit: excellent, I do hope it gets into core guile!
<paroneayea>davexunit: if you do it externally first, maybe jaysong is good :)
<davexunit>I had 'sjson' in my head
<davexunit>to the theme of sxml
<taylanub>ACTION will be applying an SRFI, comments welcome: https://github.com/TaylanUB/scheme-generic-ref-set/
<davexunit>I wanted to write an s-expression -> css library as well, but SCSS would be a name collision :)
<paroneayea>sea-ss
<davexunit>hehe or gss
<davexunit>guile style sheets
<davexunit>sss - s-expression style sheets :)
<paroneayea> https://identi.ca/cwebber/note/va76EHMpRmiV3nLPmS8IFw heh joeyh <3
<daviid>guile-css
<paroneayea>guise
<davexunit> http://41.media.tumblr.com/tumblr_lgtv7g5w8S1qf2ngho1_400.png
<paroneayea>davexunit: https://www.sss.gov/
<davexunit>ah you found my home page
<paroneayea>davexunit: might be nice to have something like sxml-match with jaysong / sjson
<davexunit>'match'
<davexunit>(match json ((@ (keys . _) ...) keys))
<davexunit>gets all the keys of an object, for example
<paroneayea>davexunit: yeah, but the nice thing about sxml-match is it allows for anything in (@ (foo . bar)) to be in any order
<mark_weaver>davexunit: you should write '@ instead of @ so that it makes sure there's a @ there
<davexunit>paroneayea: wait, it does? I tried *so* hard to get it to do that
<mark_weaver>otherwise, it will bind @ as a variable to whatever is there
<davexunit>mark_weaver: yeah that's a typo
<paroneayea>davexunit: yes anything in (@) will be in whatever order BUT
<davexunit>I didn't run the code. just typed what was in my head
<paroneayea>that's not true for
<paroneayea>(parent (child) (child2))
<mark_weaver>okay
<paroneayea>only for @
<davexunit>paroneayea: oh okay. yeah, I remember that.
<davexunit>the attributes can be in any order
<paroneayea>davexunit: you've got to compose matching systems to get the latter to work...
<paroneayea>davexunit: right
<davexunit>so maybe a matcher that didn't care about the order of key/value pairs would be nice
<paroneayea>davexunit: yeah.
<paroneayea>davexunit: but you're right, (match) already will do quite a lot
<paroneayea>and you can provide the same "solutions" to (parent (child) (child2))
<paroneayea>to do the key-value stuff
<amz3>I think sxml has that kind of matcher
<paroneayea>in the meanwhile
<paroneayea>amz3: only for attributes
<mark_weaver>a matcher that didn't care about the order could be built on top of our existing 'match' I think
<paroneayea>amz3: not for child elements
<paroneayea>unfortunately
<davexunit>need to brainstorm good syntax for destructuring an alist
<paroneayea>davexunit: anyway, if you write jaysong
<paroneayea>I'll port over activitystuff :)
<davexunit>the parser is nearly done
<paroneayea>davexunit: I might even be able to contribute! but I don't know how monadic parser combinators work (yet!)
<davexunit>I'm not using parser combinators
<davexunit>I want the module to standalone for inclusion in guile
<paroneayea>ah :)
<paroneayea>neat!
<paroneayea>#guile is happenin'
<davexunit>and JSON is simple enough that it doesn't feel completely painful
<amz3>yeha for jaysong! and guile!
<amz3>jaysong is nice
<davexunit>it will be simply (use-modules (json))
<paroneayea>davexunit: so just accept a straight up conflict with guile-json's namespace?
<davexunit>this is for core guile, so yeah.
<davexunit>but I guess maybe not
<davexunit>I dunno.
<paroneayea>davexunit: at some point mark_weaver said maybe ice-9 should be factored into the (guile) namespace instead
<paroneayea>davexunit: maybe this is a good chance for a (guile json) to be the first step there? :)
<paroneayea>mark_weaver: wdyt?
<davexunit>well wherever is fine
<davexunit>i'll worry about it later
<paroneayea>davexunit: indeed, can be solved "eventually" :)
<davexunit>gotta finish the parser and write the writer
<paroneayea>not as important as the thing working!
<paroneayea>davexunit: go go go! \\o/
<davexunit>the writer should be easier than the parser. reading/writing numbers is the only annoying bit, really.
<paroneayea>maybe I can go full-on-insane and write a json-ld parser using jaysong/(ice-9 json)/whatever ;)
<amz3>what is json-ld?
<paroneayea>amz3: a rabbit hole for linked data enthusiasts :)
<amz3>paroneayea: I have a good name for you activity stuff: Earth Software System :D
<amz3>it's like atom+sxml for linkeddata+json
<amz3>actually i have this name, i'd like to create the software I don't know what it looks like. Probably activity stuff is ESS
<amz3>paroneayea: linked data is like the new semantic web? is that it?
<paroneayea>amz3: "the new semantic web" or "semantic web rebranded" might be right :)
<amz3>never had time to dig seriously the thing but read a bit of it at the indieweb
<amz3>and bought a massive book about it
<amz3>old since it use the old slang
***michel_mno is now known as michel_mno_afk
<mark_weaver>paroneayea: I would like to do that at some point, but not yet.
<mark_weaver>this will need further discussion, but at some point in the future I would like to transition to a set of APIs that have been designed more carefully and consistently, with proper review and so on.
<mark_weaver>and that's what I'd like the (guile ...) modules to be for
<paroneayea>mark_weaver: reasonable
<mark_weaver>if we just start populating them now with modules as we design them, it won't be any different from what we've done in ice-9
<paroneayea>mark_weaver: btw what's the chance of porkbarreling in a move to utf-8 by default in guile 2.2? :)
<paroneayea>I remember you sent me a link to an email you wrote some years ago laying out some kind of plan for that (though not necessarily in 2.2)
<mark_weaver>paroneayea: you mean the internal representation?
<mark_weaver>internal string representation, that is
<mark_weaver>well, I have to go afk now, ttyl!
<paroneayea>later!
***ovidnis` is now known as ovidnis
<amz3>is there a maxium integer value in guile?
<davexunit>I don't think so.
<davexunit>guile has happily handled any arbitrarily large number I've ever thrown at it
<taylanub>amz3: the limit is your computer's memory :)
<amz3>good news ...
<amz3>so basically i need to come up with an algorithm that can keep byte serialized value of any number ordered
<amz3>is this possible?
<amz3>using lexicographic order
<amz3>here is the library in rust that does it for int64 and other https://github.com/danburkert/bytekey/blob/master/src/encoder.rs
<amz3>by the way leveldb was upgraded to support lexicographic order
<amz3>I have other interesting problem related to that
<amz3>the lexicographic order of keys in the database, allow to efficently look for a given key using the sort algorithms will all know by hearth
<amz3>the order is ascending, so lookups are ascending, to do descending search, you need to find a bigger value and then request the previous keys
<amz3>I am wondering how to implement paging and descending lookups
<amz3>play.rust-lang.org console use https://github.com/thestinger/playpen
<amz3> http://play.rust-lang.org
<paroneayea>huh wow http://marc.info/?l=openbsd-cvs&m=143956261214725&w=2
<paroneayea>mark_weaver: speaking of utf-8
<paroneayea>^^