IRC channel logs

2014-12-31.log

back to list of logs

<nalaginrut>morning guilers~
<fantazo>what is the guiler standard time at the moment?
<nalaginrut>standard time?
<fantazo>standards?
<slucx>I think fantazo is chinese
<slucx>;-) fantazo
<fantazo>do you? but why?
<fantazo>it just would be funny if there would be a "guile (tm) standard time", with a sign of approval from the church of emacs
<nalaginrut>I still don't get the concept of "standard time"
<fantazo>it was a joke.
<nalaginrut>alright ;-)
<fantazo>it was based on the assumption that people in here are meeting on a fictional concept of a "standard time". as this needs to be normed to be a standard conform scheme user channel.
<fantazo>I came up with it, because I originally wanted to know when people are active in here, which is normally based on the individual timezone.
<nalaginrut>well, there's standard time here
<nalaginrut>someone once said "morning for coming, night for leaving"
<fantazo>and for that companies like swatch's internet time ( http://en.wikipedia.org/wiki/Swatch_Internet_Time ) have proposed "standards"
<nalaginrut>alright, it's jiffies
<fantazo>I like making fun of "standards". one cements with them a certain practice, then others come and misuse/implement them badly (like microsoft), then they are used as an excuse for elitistic behaviour (thanks ISTQB and ISO) and an oversimplistic "sign" of quality.
<fantazo>nalaginrut, jiffies?
<nalaginrut>well, even Scheme implementations don't follow the standard...
<nalaginrut>fantazo: the beat of Linux
<fantazo>nalaginrut, that is a special corner case I would say. scheme and lisp are known for being "diverse"
<nalaginrut>hmm...should be the beat of operating system
<fantazo>also other languages like say Forth have that too.
<nalaginrut>too cool to hack, so any lisper could write their own
<fantazo>probably has something to do with the difficulty of implementing a basic implementation of a language in the family.
<fantazo>lisp languages I haven't yet fully understood to implement one implementation, that would be fun I would guess.
<nalaginrut>you'll find it's fun ;-)
<nalaginrut>but it's dangerous when you find it
<nalaginrut>since you realized that you have the power to create a new better one in your opinion...
<fantazo>the thing with the garbage collector is what makes me headaches. I haven't yet really understood garbage collectors, as I haven't ever implemented one.
<nalaginrut>you don't have to understand GC inside, if you just want to implement a simple one, not a industrial one
<fantazo>nalaginrut, you are right.
<nalaginrut>and if you just want to design a new language or DSL on Guile, you don't even care about GC
<fantazo>hmm :-)
<zacts>morning
<stis_>morning!
<davexunit>hello!
<zacts>I just switched to emacs today, finally
<zacts>but I'm using evil-mode
<zacts>I really want to get started on SICP sometime
<davexunit>make sure to watch the video lectures on MIT opencourseware :)
<davexunit>they are really great.
<zacts>ah ok, cool
<davexunit>it's a great supplement to the book
<davexunit>and very entertaining. in one lecture, gerald sussman dons a fez hat and a cape to before explaining the "metacircular evaluator"
<zacts>cool
<davexunit>s/to before/before/
*davexunit hacks on (web server simple) module
<zdavis_>Hi all. Is there any way in guile to tell if a script is being run from as a script vs. loaded as a library? For instance, in python you can say "if __name__ == '__main__':...
<davexunit>zdavis_: Use 'batch-mode?'
<zdavis_>I have a simple webserver program I am playing with and I would like to be able to load it into an existing guile repl without (run-server ...) being called
*davexunit is also playing with web servers
<zdavis_>I'll give that a shot
<davexunit>does anyone think that it would be good to add a module to core guile for guessing mime types based on file names?
<jmd>davexunit: No.
<jmd>Better to guess them based on content.
<davexunit>that's rather expensive.
<jmd>Well in pathelogical cases it can be.
<davexunit>I'd rather not reinvent the 'file' utility.
<jmd>Then just wrap it.
<jmd>Both 'file' and 'mimetype' do a pretty good job and fast too.
<davexunit>I already did that. it's rather ugly. it requires using subprocesses and pipes. there's no shared library that I can find.
<davexunit>mimetype is a perl script.
<ft>libmagic?
<davexunit>I defintely don't want to depend on that.
<ft>libmagic1 - File type determination library using "magic" numbers
<davexunit>hmm, that's promising, but also problematic.
<ft>That should be what ‘file’ uses.
<davexunit>I want to contribute a simple static file http server to guile core. depending on libmagic makes it harder to include.
<ft>There was a fun talk about file types at this year's chaos congress...
<ft> https://www.youtube.com/watch?v=Ub5G_t-gUBc
<davexunit>for my own uses, sure I can just use the FFI to call libmagic, no problem.
<ft>*nod*
<ft>Make the mime resolver pluggable, so people who want to can optionally use the FFI against libmagic?
<jmd>I don't see that it would be a huge job to rewrite mimetype in guile.
<dsmith-work>Wednesday Greetings, Guilers
<davexunit>hey there
<rekado>davexunit: the SICP lecture videos are great, indeed. My favourite lectures by far. Very effective.
<stis>evening guilers!
<zdavis_>davexunit: "I want to contribute a simple static file http server to guile core". Sounds pretty handy, like the SimpleHTTPServer in the python lib. It looks like it uses the builtin python mimetypes lib, which doesn't look too bad either.
<davexunit>zdavis_: yeah, the docs for that lib say that it just uses the file extension to test.
<davexunit>it does encoding guessing, too.
<davexunit>which I suppose I should figure out how to add.
<davexunit>I hope the source for this module isn't too scary
<zacts>davexunit: http://xuanji.appspot.com/isicp/
<davexunit>oh cool. I remember seeing this awhile ago.
<davexunit>for me, though, I just write everything in Guile and interact with it at the REPL
<zacts>indeed
<davexunit>cool to have it accessible right there in the browser, though.
<zacts>oh I wonder where that info file version of sicp is
<davexunit>oh yeah! you're reminding me of a lot of things. I need that.
<zacts> http://www.neilvandyke.org/sicp-texi/
<davexunit> https://github.com/webframp/sicp-info
<davexunit>cool, I think yours is the better link
<davexunit>actually, they are the same :)
<zacts>ah ok
<davexunit>there's an emacs package for this on melpa
<davexunit>I just installed it, but sicp doesn't show up in the list of info manuals that I can read.
<davexunit>ooh now it does.
<davexunit>yay!
<zacts>davexunit: how did you do the picture language with guile?
<davexunit>I didn't, but I am basing my own picture language off of it. :)
<davexunit>for Sly.
<zacts>oh cool
<davexunit>having some trouble, though.
<zacts>what is Sly?
<davexunit>game engine.
<zacts>ah ok
<davexunit>SICP's picture language uses procedures to represent "painters", which makes them a bit of a black box.
<davexunit>I want to represent objects in the tree with another data type.
<davexunit>which I've done mostly successfully, but I'm having difficulties getting the layout functions to work right. in SICP they are called beside and below, which you can use to build all sorts of cool things.
<zacts>oh cool
<davexunit>in my picture language, objects have a transformation matrix plus a bounding box for their dimensions.
<davexunit>but they don't play nicely together.
<davexunit>there's no way to know the actual size of an object until rendering time.
<davexunit>because the scaling of a parent painter affects its children.
<davexunit>so I have no straightforward means of beside/below.
<davexunit>means of implementing*
<zacts>I would like to make a game with guile too
<zacts>for learning
<davexunit>zacts: well, if I can figure out this blocker and make a first release, Sly would be a good platform to build a simple game on.
<dsmith-work>davexunit: Lots of minimal server just use extensions. (like boa)
<davexunit>dsmith-work: yeah, so I'm learning. which makes me feel like such a module would be useful for guile.
<davexunit>I based it off of what nalaginrut did for artanis.
<dsmith-work>davexunit: Maybe make it configurable?
<davexunit>maybe, but that's more complexity for something that I'm trying to keep as simple as possible.
<daviid>if that is going to be..., i'd rather have a core functionality that checks the content, imo it is worth the cost and too 'dangerous to rely on the extension [i've had problems with that, users writing file from a tif source but using [by mistake] a png extension ... my 2c
*davexunit will see what the maintainers think
<davexunit>on to the next hack for now
<zacts>davexunit: have you heard of the concurrent-schemer?
<zacts>it's scheme on top of erlang
<davexunit>first I've heard of it
<zacts>also http://lfe.io/
<zacts>Lisp flavored erlang
<zacts> http://the-concurrent-schemer.github.io/scm-doc/
<davexunit>I have heard of that
<davexunit>lfe
<zacts>yeah
<davexunit>I'm just not too interested in lisps on another host language.
<zacts>the concurrent-schemer is a real scheme on top of erlang
<zacts>yeah
<davexunit>I want my lisp to be first class.
<paroneayea>davexunit: that's so awesome re: sicp in info
<paroneayea><3 <3
<davexunit>:)
<fold>I like that norton guy. I've seen found his projects on multiple different occasions. LETs the leveldb library, chibi scheme, concurrent schemer
***dsmith-w` is now known as dsmith-work`
<zacts>hello
<cluck>zacts: fwiw https://code.google.com/p/termite/
<zacts>heh that's cool