IRC channel logs
2017-03-04.log
back to list of logs
<amz3>there is almost no comment in my code except maybe this very useful one <amz3>(define (make-context request body) <amz3> "Create a route context" <amz3>which second argument is useless <amz3>the `maybe' procedure sound like magic at play <daviid>amz3: guildhall users need to tell guildhall where to look for packages, that is done in .config/guildhall/config.scm <daviid>(destination shift-reset (fhs "/opt") <amz3> I think the fact that the result of excercising Dorodango is <amz3> essentially a "polished mudball", makes this quite suitable a name <amz3> for a Package manager ;-) <amz3>Dorodango is the package manager which guildhall is based on <amz3>guildhall seems all nice but it's broken for 2.2, or seems like it. I will Arne branch <daviid>ArneBab: using this repo git://github.com/ijp/guildhall.git, which seems to have your patches, guild update raises an excepton using 2.1.7.10-f261eaf, is there a working repo somewhere or is that what we have for now? <amz3>there is port of industria to guile in that repo <daviid>knowing i have 'discrete' float values, such as 1.0, 2.0 ... is there a faster way to convert to exact then our inexact->exact ? <spk121>daviid: all the numbers have zero after the decimal place? <spk121>daviid: I don't have a better idea. In the general case (inexact->exact (round x)) is often faster than (inexact->exact x) <spk121>daviid: but probably not for your <daviid>spk121: trying to boost some image processing relayed stuff, in this case, im-scrap, where 40% is spent in inexact->exact <daviid>and I know they are 'discrete' floats, I need their 'integer' value to access a vector (which is cache to boost performance precisly...) <daviid>I was hoping there is a math 'shortcut' in case ... <amz3>maybe (inexact->exact (round x)) triggers the optimisation, dunno <xkapastel>particularly this quote: One reaction is to embrace the complexity and be thankful that SAT solvers are as good as they are. Another reaction is to ask whether this can possibly be a good idea. Maybe we should not be building tools that require solving this problem. Maybe something has gone wrong in the way we develop software. <amz3>They are arguing that sat solver is overkill for the subset of the problem of package management basically <amz3>that package management can be made a simpler problem, so that it isn't NP-complete <amz3>yes, but I need to learn minisat or 3-sat solvers, because that's what grammar link use for deciding the correct grammartical parse of a natural language sentence <xkapastel>it does seem like allowing two different versions of a package is a simple solution <xkapastel>well, sat solvers are good for all sorts of things <amz3>prolly! I need to find a 3-sat solver with which I can work with now <spk121>daviid: I decided to goof off with your prob for a second. exact->inexact is very complicated <spk121>daviid: i made a tiny binary module to test it out <spk121>daviid: so it is a solvable problem. But, it requires some C hacking in upstream. <daviid>sneek: later tell spk121 thanks! i was hoping to reduce the time still using scheme only, but thanks for the pasted code, let's talk (maybe) about this .. thanks again <ryanwatkins>Hi guys, I am trying to configure a guile library from source on GuixSD, any idea how to solve the error 'No Guile development packages were found'? <jmd>ryanwatkins: Guile is probably not in you profile <Amynka>slyfox: that would make sence if the guy does not have gcc 4.9.4 <slyfox>-Os might also trigger an old gcc bug <Amynka>slyfox: yea i mostly wonder what upstream thinks <Amynka>slyfox: i will try though good tip :) <amz3>let's look at this sat resolver for computing package dependencies <amz3>I stumbled upon a scheme version of sat solver, but without licence file, I am wondering if I had the right to read that code... <amz3>It seems like I need to write the sat solver myself :/ <amz3>I was reading again my code, and it's there is minor differences betweeen webui.scm @ master and webui.scm @ guildhall.hypermove.net <amz3>fun! In git lab you can create merge requests between branches <amz3>basically in master I use the graph database with guix-web run-server handler <amz3>in guildhall branch it's minikanren, some validation of input and another run-server handler that dispatch on http method too <amz3>So I think i have sat solver ready <amz3>now i need to test to test it to resolve dependencies <paroneayea>probably should update the 8sync site too pointing to the videos from chicagolug / fosdem too <wingo>ACTION trying to bang together my spam classifier with tekuti <paroneayea>wingo: ooh I am interested in that btw for different reasons <paroneayea>wingo: I'd like to play with your code once you got it going... I want to experiment with anti-spam, and eventually anti-abuse, systems for federated networks <amz3>expressing a dependency seems so simple in predicate logic, that it looks unreal: (or (not haunt) guile) <amz3>paroneayea: how many implementation a activitypub are on going? <paroneayea>amz3: not 100% sure, but Pubstrate (Guile server and minimal scheme'y client) and socie-el (emacs client) are the main testbeds I'm hacking right now, and I know Benjamin Goering has one, and this summer MediaGoblin will be implementing it <paroneayea>additionally, I *believe* Pump.io will be implementing it, as well as Mastadon, probably uh, the OwnCloud replacement <amz3>lot of people seems to be interested <paroneayea>so a few, but we could use more, and we could use help with submitting implementation reports :) <amz3>right now the only "thought" as I have is that one could create a P2P network on top of activitypub but not sure how <amz3>paroneayea: I need to finish my current mini project, I'd like to improve guildhall package dependency solver using sat algorithm <amz3>it seems like apt has use also a sat solver if you request it <amz3>maybe it can be useful for guix <wingo>paroneayea: i don't know much about the field. bayesian classification works ok when there are just two categories, attacker not too too active, and you can tokenize well; but it seems that other strategies are the state of the art these days <wingo>would be nice if we had a text classification community in guile; we have a nice dev environment, so it's possible one day i guess ^^ <wingo>paroneayea: so are you free of w3c things now, activitypub-wise? <paroneayea>wingo: Activity*Streams* made it to Proposed Recommendation, which means it's left the hands of the group and is on to w3c advisory committee to approve <paroneayea>which is great, because that's the vocabulary backbone of ActivityPub <paroneayea>however, ActivityPub still needs implementation reports and a test suite <paroneayea>now at least I have some nice async options to build the test suite on in Guile :) <wingo>paroneayea: have you been able to try fibers yet? <wingo>i know there were some gouix snafus before <paroneayea>wingo: now that it's in guix, it's a finding a spare moment thing :) <paroneayea>wingo: I have read the manual several times though :) <paroneayea>wingo: I have been thinking a lot about how to put 8sync on top of fibers <paroneayea>I think it'll be doable but the "juggling actors" bit might be a bit trickier, or would have to be redone... I'll see :) <paroneayea>explaining that probably isn't worth it without trying it <daviid>folks, yesterday spk121 posted http://paste.lisp.org/+7APG, to help me boosting (inexact->exact (round val)) where val is always a 'discrete' float (such as 1.0, 2.0 ...) but (a) I don't know how to use this from scheme :), and (b), it uses SCM_I_MAKINUM, so that is part of our VM, so the quizz is is there a way to access this SCM_I_MAKINUM from scheme 'immediately'? <daviid>in the above I used round because spk121 said it somehow makes inexact->exact faster <daviid>though I know all floats are already rounded <daviid>and the above does not seems true, I removed the call to round and win 0.03 seconds <spk121>oh hi. The round trick only works when you have non-integers (eg 1.234) that your trying to convert to integers. It doesn't speed up 1.0, etc <sneek>spk121, daviid says: thanks! i was hoping to reduce the time still using scheme only, but thanks for the pasted code, let's talk (maybe) about this .. thanks again <daviid>spk121: how do i use what you posted yesterday from scheme? <spk121>daviid: The whole story? lemme find a place to post it... <daviid>spk121: what i dont get is SCM_I_MAKINUM is 'in' guile, so why can't i 'just bind it or call it? <amz3>meh... my sat solver is buggy <daviid>so i would use the guile ffi to bind a libguile function, how is that? :) <spk121>daviid: maybe? SCM_I_MAKINUM is a gnarly macro, so it can't be bound w/o making it a function first <spk121>daviid: but you might be able to bind scm_to_double and scm_from_int32 <daviid>spk121: why scm_to_double? and i guess you mean scm_to_int32? I'msorry i'm very unknowledgeable of that side of guile <daviid>my floats are single float (f32) <spk121>daviid: because the C procedure scm_to_int32 will throw an exception when passed a non-integer SCM <daviid>spk121: I read i the manual that scm_from_int32 expects an integer, s I don't see how to convert ... <spk121>daviid: so SCM -> scm_to_double -> double -> cast to int -> scm_from_int32 -> SCM