IRC channel logs

2014-11-26.log

back to list of logs

<waressearcher2>does guile support lua ?
<bipt>waressearcher2, yes, though probably not that well at this point
<waressearcher2>lack of devs ?
<waressearcher2>lua is quite popular, why ?
<bipt>basically. i think someone is working on it but it wasn't actively worked on for a while
<bipt>oh, it's not included in guile yet. we only have scheme, elisp, ecmascript and brainfuck in the main distribution
<bipt>it looks like nalaginrut is now maintaining the lua support at https://github.com/NalaGinrut/guile-lua-rebirth
<waressearcher2>"brainfuck", was it really necessary ?
<bipt>waressearcher2, it's just a toy language. maybe someone should implement unlambda so guile has a toy language with a less controversial name (-:
<waressearcher2>so they implemented toy language but not real lua ?
<bipt>waressearcher2, the toy language is provided precisely because it is very simple, as an example of how to use the compiler-building infrastructure
<bipt>guile does a lot of the heavy lifting, as high level languages can basically be compiled to scheme, but writing complete and fully compatible support for a real language takes months of work in most cases
*cky wants to implement GolfScript as a Guile language.
<cky>Maybe it'll run faster than the reference implementation.
<nalaginrut>morning guilers~
<waressearcher2>I wish they implemented quakeC
<waressearcher2>so it is possible to embed guile in any software to make that software upgradable with plugins ?
<waressearcher2>can guile be embedded to say doom source code ?
<OrangeShark>waressearcher2: You can interface to Guile from C
<OrangeShark>waressearcher2: here is the section in the Guile manual about it https://www.gnu.org/software/guile/manual/html_node/Programming-in-C.html#Programming-in-C
<civodul>Hello Guilers!
<nalaginrut>alright, after read Appel's paper, I realized SSA is not hard to be implemented with Scheme too...
<taylanub>bipt: hoi :) any plans on rebasing your emacs branch onto the new canonical master branch, since Emacs moved to git? is it difficult?..
<Chaos`Eternal>helo guilers
<ArneBab>civodul: I now looked into SRFI-42, and adding futures doesn’t look as easy as I had hoped (but actually not really expected)
<ArneBab>I’m sure that someone who really understands the implementation of SRFI-42 can add futures easily, but that’s not the case for me…
<davexunit>are there any good naming conventions for functional setters?
<davexunit>I don't really like the 'set-object-field' naming that the guile manual uses for the (srfi srfi-9 gnu) examples.
<taylanub>SRFI-57 uses the word "update"
<taylanub>well it also uses "update!" for non-functional updates.
<davexunit>I'm writing what I hope will be a declarative API for something, so I want the language I use to reflect that.
<dsmith-w`>Morning Greetings, Guilers
***dsmith-w` is now known as dsmith-work
<civodul>davexunit: another option is something like 'inherit' in Guix
<davexunit>civodul: yeah, I was thinking about doing something like that.
<davexunit>but then I'd probably need that record macro of yours
<davexunit>I'm hacking on sly, and I have a data type that describes the state for a single rendering operation that I am calling a 'model'.
<davexunit>I want to write a series of functions that do things like change the color, texture, transformation matrix, etc.
<civodul>ok
<civodul>there may be performance considerations as well
<davexunit>and it would be nice if the code was declarative. I guess an 'inherit' concept would work.
<civodul>like, do you want to reallocate a complete model every time you change a single parameter
<davexunit>models are actually cheap.
<davexunit>it just contains references to the expensive to create stuff like the vertex array
<civodul>ok
<ArneBab>davexunit: could you use keyword arguments, changing only the parameters you request changed and inheriting all others?
<davexunit>(set-model-color (make-model ...) white) works of course, but it just doesn't use the language that I would like.
<davexunit>ArneBab: I thought of that, but not sure how to do that well.
<ArneBab>(update-model model #:color white)
<ArneBab>^ something like that?
<ArneBab>(I’ve got some lists of immutable datastructures in my python stuff which I update like that)
<davexunit>yeah that could work, but I couldn't use lambda* to specify the accepted parameters.
<davexunit>I would need some special default value that I can check for to know that the user didn't want that field changed.
<davexunit>instead, I could take a 'rest' arg and map over it
<davexunit>converting keywords to symbols for field names.
<ArneBab>yes
<davexunit>is there an easy way to assert that two objects are of the same type?
<jmd>configure complains:
<jmd>checking whether libunistring was built with iconv support... no
<jmd>configure: error: No iconv support. Please recompile libunistring with iconv enabled.
<jmd>But I have done that. and it still complains.
<jmd>Is it possible to build guile without threading?
<civodul>jmd: yes
<jmd>civodul: So how does one do it? --without-threads is ignored.
<civodul>--without-threads shouldn't be ignored
<civodul>hmm, wait
<civodul>false alarm, --without-threads does the right thing
<jmd>Yeah on closer look, its gc that is expecting the threads.
***dje is now known as xdje
<amirouche>héllo guilers
<dsmith-work>Hey. All you U.S. guile-heads have a great Thankgiving weekend
<amirouche>thx ;)
<amirouche>I'm doing some bindings (wiredtiger) and it's not that difficult
<amirouche>It's a bit repetitive though