<mark_weaver>taylanub: I can tell you that the #i1@-0 problem has nothing to do with GMP. <mark_weaver>GMP is an integer library, but this has to do with floating point behavior, likely having to do with either the compiler or the associated C runtime support library. *mark_weaver goes afk for a bit ***fangism1 is now known as fangism-ctrl-Z
<nalaginrut>b4283: well, I think they were talking about FPGA on novena laptop <ijp>b4283: the french polynesian giraffe afficionados *nalaginrut remind the author ever stay at Shenzhen for his design and manufacture... <nalaginrut>I don't know if people know how to take advantage of this on board FPGA, but there're so many people want to mine bitcoin crazily *nalaginrut has no interest in bitcoin... <ijp>all that cpu power, wasted <nalaginrut>but the FPGA is spartanVI, so I think there's a chance to run lisp machine <ijp>b4283: bitcoin mining is a waste of cpu power <ijp>or do you mean the fake acronym? <b4283>ijp: how do you come up with such a creative acronym :P <ijp>one letter at a time <nalaginrut>well, if I can afford novena, why I don't buy a spartan3 board, it's cheaper... <mark_weaver>nalaginrut: umm, how about to support a hardware designer that makes his designs freely available and chooses components that are documented (without signing an NDA) and compatible with free software? <nalaginrut>mark_weaver: I've talked to some hardware engineers, they said the have the pressure to do so <mark_weaver>it just so happens that there are _zero_ modern laptops being produced right now that can be used without non-free software. <nalaginrut>anyway, free software has been enlightening for many years, and most software hackers know the importance and the benefit of free software <nalaginrut>open hardware movement just started, so there's time to wait them <mark_weaver>if we assign no value to freedom in our purchasing decisions, then we'll get none. <nalaginrut>mark_weaver: yes, it's a good choice to support a hardware hacker who insist on GPL <nalaginrut>considering our community just spend money to build our new hackspace, I have to delay to think about novena... <mark_weaver>the price can only come down when these things are being produced in high volumes. and that's never going to happen unless we, the buyers of hardware, demonstrate that we care about freedom. <nalaginrut>yes I see, actually, I really want to buy, the bios and wifi driver are freed <nalaginrut>it's great progress for the wifi driver, I spent some time on possibly freed wifi driver and document last year, but finally I have to sign a NDA... <mark_weaver>and the board design is also free, so you could modify it to suit your needs. <nalaginrut>well, the author is proud of the case design, and you don't buy it... <mark_weaver>My life is structured around maximizing my independence and free time, so I have very little money. <zacts>symbolic manipulation of polynomials is fun <ArneBab>And Mark Witmer from guile-xcb already sent me a draft for the “new readers” section *happy* <ArneBab>and if davexunit finds the time to write a few sentences on some of the deep magic he uses in guile-2d, the only missing parts are “embedded DSLs” (maybe I can ask civodul for this) “your own object oriented programming systems” and “real threads”. <ArneBab>though I’m sure that I am missing quite a few things here… <nalaginrut>ArneBab: I wrote a front-end for imp language which is very small to understand, do you need a tutorial for multi-lang? <nalaginrut>anyway, there's some bug in parser, but I think it's enough for an example for newbies <ArneBab>If you would like to write two or three paragraphs on this, I’d love to add this as additional “language development” section. <nalaginrut>ArneBab: of course! but do you think it's match the topic? ;-P <ArneBab>nalaginrut: this is the “Guile Scheme beyond Python”-section <ArneBab>the section specifically is about taking programming further than with Python ☺ <nalaginrut>I was planing such a multi-lang tutorial, but wait so long time <ArneBab>how about this intro? A more experimental usage of reader extensions is development of completely new languages - or reviving old languages by giving them access to the full potential of GNU Guile. Let’s listen to NalaGinrut, who describes his experience with implementing [[http://en.wikipedia.org/wiki/IMP_programming_language][IMP]]: <ArneBab>nalaginrut: embarassing question: How should I call you? <nalaginrut>this tiny language is designed for educational purpose <nalaginrut>I found it in a CS theory textbook, and the book demand the users implement this language, and using it for later course <ArneBab>nalaginrut: is Mu Lei (your name in github) correct? <nalaginrut>ArneBab: yes, you can write Nala Ginrut directly <ArneBab>that’s what I did ☺ (Mu Lei aka NalaGinrut) <nalaginrut>ArneBab: BTW, it's pronounced like Muller (if you don't know how to read it) <ArneBab>that’s good to know - I’d have pronounced it as Mu La-i… <ArneBab>I now need to get back to writing on the thesis. <ArneBab><?xml version="1.0" encoding="utf-8"?> <ArneBab><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" <ArneBab><title>Going from Python to Guile Scheme: A natural progression</title> <ArneBab><meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <ArneBab><meta name="generator" content="Org-mode" /> <ArneBab><meta name="author" content="Arne Babenhauserheide" /> <ArneBab> .todo { font-family: monospace; color: red; } <nalaginrut>ArneBab: yes I know you will pronounce it like Lai <Arne`>I hope I just got kicked for flooding… <Fulax>actually you didn't, but the flood stopped after 15 lines <Arne`>org-mode publish replaced my copy-buffer with the published HTML and I carelessly hit enter after inserting the text… <Arne`>this is what I wanted to paste: <Arne`>nalaginrut: please tell me when you have a few paragraphs on your experience with IMP <taylanub>mark_weaver: Thanks for clarifying, I jumped to conclusions there. *taylanub is trying to figure out how to use GDB and the Guile REPL at the same time .. the REPL seems to overtake all input after doing "run" in GDB <taylanub>#gdb was helpful, C-c it is. (C-c C-c in *gud-guile*) <ArneBab>civodul: I think “defining a package-format” is a poster-child of creating a domain specific language. <civodul>ArneBab: would you like to do it for me? ;-) <civodul>or you could just link to the doc on gnu.org/s/guix <taylanub>hrm, gdb can't find numbers.c, and when I do 'add-symbol-file ./libguile/numbers.c' it says "The address where ... has been loaded is missing" <taylanub>ok .. what am I looking for there ? BTW I probably need to load the .lo files and not .c ? <nalaginrut>Arne`: I'm writing the tutorial, it's too long , maybe post on my blog and you put the link on it? ;-) <nalaginrut>the code highlight in my blog is better, since the code is so long too <ArneBab>civodul: actually I’m looking for short personal impressions: how was your experience while doing this? <ArneBab>civodul: that this gets a link to Guix is clear ☺ <ArneBab>nalaginrut: if you could write an abstract of it (just a personal impression), that would be cool! <ArneBab>nalaginrut: and could nicely be linked to the blog post *nalaginrut thinks doing some hustler work for Guile is necessary... <didi`>Is there something like `program-lambda-list' for syntax? <wingo>didi`: that's a hard question in general, but yes sorta <wingo>for syntax-rules you can get at the patterns <wingo>(procedure-property (macro-transformer (module-ref (current-module) 'do)) 'patterns) <levabalkin>hello, where do I find the documentation for a procedure to execute an external program, say ls or qemu ? <didi`>levabalkin: (info "(guile) Processes") <ijp>prefer system* to system <didi`>Hum. So not every macro has a transformer? <didi`>(macro-transformer (module-ref (current-module) 'define)) => #f <taylanub>OK so I have the libguile directory under the source directories, yet when I do "break numbers.c:9119" it says "No source file named numbers.c." <wingo>didi`: not all macros have transformers, no <wingo>taylanub: sounds like you managed to build without -g <taylanub>I recompiled with "gmake CFLAGS+='-ggdb'" now and still have the same issue. By the way this is OS X. <mark_weaver>(it's not possible to implement 'define' as a macro) <ijp>we do have functions for adding to a particular module, the problem is that then you have to ask how those functions would get defined, how the macro for defining define gets defined <ijp>turtles all the way down! <didi`>mark_weaver: I see. Tho (macro? (module-ref (current-module) 'define)) => #t <ijp>I handwave and say it is part of the syntax of lambda <mark_weaver>ijp: that wouldn't work either, because if you did it that way you wouldn't be able to define macros that expand into definitions. <mark_weaver>and anyway, I think at that point, you've already admitted that it's not really a macro anymore. <mark_weaver>didi`: that's interesting! I guess that 'macro?' answers true for core syntax forms also. <taylanub>Oh well, need to catch the bus, will tackle this on monday (OS X machine only at work) <didi`>mark_weaver: Another thing interesting: (macro-type (module-ref (current-module) 'if)) => core, but (macro-type (module-ref (current-module) 'define)) => define. <mark_weaver>taylanub: did you compile that test program with the same compiler you used to compile guile ? <mark_weaver>well, I don't know what to tell you about the problems getting the debugger to work, but thanks for trying! <mark_weaver>maybe you need to install the upstream gdb instead of whatever comes with xcode, dunno. <mark_weaver>didi`: I didn't know that we exported anything like 'macro-type', but I guess that comes from the binding types listed in psyntax.scm starting from line 503 (in stable-2.0). <mark_weaver>so even among what I would normally just call 'core' forms, there are some constructs that need to be recognized specially by bodies. <mark_weaver>A 'body' is a technical term basically meaning a place where internal definitions are allowed. <mark_weaver>and it's a little tricky to get them right, mainly in figuring out where the definitions stop and where the expressions begin. <mark_weaver>if you want to know more, read the comment of 'expand-body' in psyntax.scm. <mark_weaver>though I should say that understanding what's really going on in psyntax will probably require reading at least one paper about it. <didi`>Oh well. Maybe another day, then. ;^) ***cluck``` is now known as cluck
***wpceee is now known as wpsea