***mario-go` is now known as mario-goulart
***spacebat1 is now known as spacebat
<theseb>Anyone heard of project to auto-port emacs to guile (scheme)? That seems awesome if they could pull it off....to have a clean Scheme based emacs <theseb>shanecelis: is machine translation of ELisp to Guile a dream or reality? <shanecelis>theseb: It would be cool. Initially though it'll probably just expose elisp. <shanecelis>theseb: well, this project won't be translating the elisp. Instead, it'll be actually running elisp in the Guile VM. <theseb>shanecelis: so he's just making a shim that implements Elips in Guile? <theseb>shanecelis: what is BT's interest in swapping out the Elisp interpreter with Guile? <shanecelis>theseb: Elisp already runs in Guile. He's trying to swap about the Emacs' Elisp interpreter for Guile's. <shanecelis>theseb: It'll give us a Scheme to go to, ffi, concurrency, continuations, modules. <theseb>shanecelis: if guile rune elisp seems he's done <shanecelis>theseb: Not exactly, running elisp is one small part. He has to rework Emacs' tightly integrated elisp interp. to use Guile. That's a huge undertaking. <shanecelis>theseb: Unfortunately, Guile-emacs won't quite be the clean Scheme Emacs initially, but it'll provide a smooth transition path to possibly get there. <theseb>shanecelis: nice...grats on the being accepted to GSoc <nalaginrut>brendyn: sorry guys, the site isn't finish yet, so there's only home page <nalaginrut>and if you want a github-blog, you have to use hyde <nalaginrut>but for a more complex dynamic site design, you should choolse Artanis ;-P <nalaginrut>sneek: later tell ArneBab_ it's from google font api, I think it's free <nalaginrut>and there could be comment section for a static page, there're lot of plugins for that, but I'd like to handle all the comments and requests on github issue <brendyn>Interesting. Will people who write scheme things for guile be able to put that scheme into old emacs? perhaps if some scheme interpreter written in elisp was used, they way people are less reluctant to use guile if they wish to pass on code to others during this transition phase? <taylanub>brendyn: I have an Emacs right here that can execute Scheme functions in Elisp. <taylanub>(setq my-scheme-function (eval-scheme "something-evalling-to-a-procedure")) <taylanub>Alternatively, (setf (symbol-function 'my-scheme-function) (eval-scheme "...")), and then just (my-scheme-function arg1 arg2 ...) <taylanub>I'm planning to write some Elisp subr (function defined in C) which does this without having to use `eval', using Guile modules instead. <taylanub>Then basically any Guile Scheme library will be an Elisp library. :) <brendyn>is it easy for someone to chuck scheme into their init.el though? <taylanub>Well yeah, this is GNU Emacs .. bipt's branch: <taylanub>Oh, I made some tiny changes to make `funcall' (and `apply') and symbol-functions to work with Scheme procedures. <taylanub>I'd paste my patches somewhere, but they're dirty ... <ArneBab>youlysses: Guile Scheme goes with Everything :) <sneek>Welcome back ArneBab, you have 1 message. <sneek>ArneBab, nalaginrut says: it's from google font api, I think it's free <brendyn>youlysses: funny, or Gibe: Guile's intelligent book for excellence <brendyn>If you could perhaps dream of what itd be like, start a publically editible outline for it to be filled in <brendyn>where can i see what other learnxthehardway thing look like? <nalaginrut>besides, maybe I should write 'Artanis' as 'Λγταηιβ' <brendyn>what does the the name Artanis come from? <brendyn>I shall make a program called Knarf :) <taylanub>scm_procedure_p returns true for some Elisp objects. :( <YoungFrog>taylanub: are scheme procedures somehow translated to emacs-lisp objects ? <taylanub>YoungFrog: The Elisp world can hold any Scheme object ATM, just not do much with them .. not even pass back to Scheme because `eval-scheme' takes a string so you can't inject an object into it. <taylanub>(Unless the object has reader-syntax I guess. :P) <taylanub>So I just do (eval-scheme "blah") and if that gives back a procedure, I now have a Scheme procedure as a first-class object in Elisp, and can put it into a variable or into the function-slot of a symbol. <YoungFrog>I mean, when you (setq foobar (some scheme procedure)), is foobar a usual elisp object (I'd guess a lambda expression) or is it something specific to guilemacs ? <taylanub>Scheme objects are also Elisp objects, so to say. <taylanub>The Elisp interpreter has mostly been modified to use the data-types from libguile. <taylanub>So, I think, a float in Elisp is just an "inexact real" of libguile ATM. <taylanub>There are still data-types that are *not* from libguile, and that makes things a bit messy. <taylanub>For example symbols, apparently. And the libguile scm_ functions don't (can't) check if their arguments are actually Scheme objects, they assume that to be true, and then some old persisting non-libguile Elisp objects *look* like some Scheme objects but aren't and cause weird errors if you pass them to a libguile function. <taylanub>For example in the Elisp `funcall' definition (in eval.c), I cannot just put "if (scm_procedure_p (fun)) scm_call..." anywhere, because scm_procedure_p returns true for some old Elisp objects. <taylanub>Solution would be to wrap *all* Elisp objects in libguile types, like e.g. SMOB types, I guess. <taylanub>On the meanwhile I'm doing the scm_call at the very end of `funcall', if everything else failed, so correct Elisp works, and Scheme procedures work, but some weird Elisp object might crash the process instead of raising an error, because it has been passed to scm_call. <YoungFrog>I think I get it, although i know nothing to the emacs C core (let alone the guilemacs C core) <taylanub>Yeah, I only now have learned tiny bits of it (eval.c). <taylanub>YoungFrog: Hrmmm it seems Scheme objects are of the Elisp type Lisp_Other; or at least that's what seems to be used in print_object; it must be the stable way of determining Scheme objects in Elisp now ... <ota>That Norvig link is also available in many languages, as well it should be. <hellekin>brendyn: awesome! I didn't know that resource. Indeed that can be useful for developers to pick a new language. But... There's no Guile entry. Care to add one? :) Also I suppose the languages could be arranged by family. <ota>Clearly inspired by the same issue. <brendyn>hellekin: I think it would be most appropriate to have a Scheme entry, perhaps? Or do you think specifically Guile? <brendyn>for a 10 minute lesson, the most significant part of Guile is Scheme <brendyn>Maybe I could do it. I'm only a noob but perhaps. <hellekin>brendyn: hold on, I'm formalizing the idea and sending it to the mailing-list <brendyn>hellekin: Of making a learnxinyminutes, or the big Guile Book project thingy? <hellekin>nalaginrut: +1 for Λrtanis : it's still readable for non-hellenophiles <brendyn>perhaps put a strike through the lambda so it looks like an A, and only we know the truth! <nalaginrut>and that tutorial is done in 15 minutes today, need to add more <nalaginrut>I have to present a tutorial of Scheme for my project, since many guys don't know what is Scheme ;-P <brendyn>I think scheme has lots of tutorials available <nalaginrut>and even there're lot, users just want a quick link to start, not open google ***Shozan is now known as SHODAN
<aleix>good morning/whatever guilers ***ijp` is now known as ijp
<hellekin>hmmm I guess I got it wrong: mail bounced to <davexunit>hellekin: you need to subscribe to the mailing list first <hellekin>or am I subscribe with another email. Rhaaaaaaaaaaaaaaaaa! I want GNUnet! <amirouche>there is an interpreter by thread ? or is it another trick ? <ijp>guile threads are posix threads <sneek>Welcome back ijp, you have 1 message. <sneek>ijp, add^_ says: Something seems to have been broken since the last updates (of guile) with guildhall, &assertion or something.. Not sure. <ijp>only one interpreter <ijp>python could, but it chooses not to <ijp>dsmith-work: everyone has multiple cores these days <ijp>dsmith-work: well, everyone who has bought a new computer this century :) <ijp>good question, I haven't checked if it is still up in a few months <ijp>probably crashed and giving 500s <taylanub>Where is it ? shift-reset.com ? That works. <ijp>holy shit, someone commented on my blog <ijp>the wonders never cease <ijp>and I thought the week peaked on wednesday when I finally got mills mess down <ijp>amirouche: anyway, the code isn't available, but that's just as well, since I've hard coded a lot of things that shouldn't be <amirouche>Like I said I'm starting guile, and kind of bored by SICP somewhat and though that reading some code might be a good idea <add^_>ijp: Was it me? :-) Because I've done that, but that was long ago. <ijp>I keep meaning to post more. I have like three half finished posts <add^_>Actually, now that I notice how it *really* should have looked (the equations), I'm guessing something was wrong in Chrome on my tablet, Firefox is displaying the equations correctly though. <taylanub>Don't you wish thoughts would just write themselves down ? <ijp>that's what #emacs is for me <add^_>taylanub: get on to it, make it! <ijp>I'm sure they all appreciate that :P <add^_>But I think the equations were as readable as they are now, just not displayed as pretty. :-) <ijp>add^_: mathml support got pulled out out of webkit, IIRC, because it was really buggy <add^_>That makes sence.. I suppose.