14:20:37jackdanielmalice`: sometimes I want to access second returned value, * doesn't give me that
14:20:54malice`Yes. Indeed, / might be useful then
14:24:24ogamitaTMA: Notice however that ! is a reader macro giving you the expression. so: (incf *x*) !! !! will keep incrementing, while (incf *x*) * * would just print the result again.
15:03:22ogamitadidi: if you test the API, in a test package using only the public interface of the package (exported symbols).
15:03:38pebblexehow can I define a macro that I can pass a condition to? like let's say I want to pass (<= 1 x 10) in as a condition. but what do I do instead of placing x there?
15:03:56ogamitaBut sometimes, you want to test a function or an internal mechanism that is not exported, then the test is in the same package (different files, so you can load the tests optionally).
15:04:35ogamitapebblexe: well macro arguments are lisp expressions (or parts of).
15:05:21ogamitapebblexe: are you sure you want to write a macro? It looks like you'd rather have a function with a predicate parameter: (f (lambda (x) (< 1 x 10)))
15:05:49ogamitapebblexe: but with a macro, you could indicate to the macro the list of variables the macro should bind to evaluate the expression: (m (x) (< 1 x 10))
15:06:28ogamitapebblexe: probably you should be more specific, and present the code you have so far ( http://paste.lisp.org/new ).
15:07:40pebblexethis is what I have so far: http://paste.lisp.org/display/342001
15:07:55pebblexeI've been working on this for days and I have so little to show for it
15:08:16loke___pebblexe: What is it you are trying to do?
15:08:52pebblexeloke___: make match a nice easy looking version of the function I am trying to write
15:09:06loke___pebblexe: sure, but what do you want the function to do?
15:09:27pebblexeI want it to be a shorter version of pack/pack-int
15:21:25axionogamita: I apologize. I thought I was in the #lispgames channel. I can see how you didn't have enough context now as you haven't been there in over a year.
15:21:44shkai'm not even sure that it must work on lists
15:22:13shkaideally, supply your own hash function
15:22:42ogamitaaxion: hopefully, I should be resuming writing games in lisp within a year. :-)
0:21:39aethDoes anyone have any idea why something that would perform around 3% CPU in SBCL and around 6% CPU in CCL would struggle at 100% CPU in ECL? I'm guessing something creates a lot of garbage in an inner loop in ECL but not SBCL and CCL, or at least not as much garbage.
0:26:42jason_maeth: Could you get an idea using (time ...) and comparing the number of bytes consed, time spent in gc? i know ccl and sbcl have those things in their time output. Not sure about ecl.
0:29:07shrdlu68Just finished asdfying a project. First time for everything :)
0:37:27pilltonshrdlu68: I like ASDF. It saves a lot of time.
1:05:55aethjason_m: I used to use time, but in SBCL one can just disassemble a function and look for a commented allocation there.
1:09:21jason_maeth: sounds like a more reliable approach. I haven't played with disassembling yet.
1:09:52aethIt's very useful. I'm surprised I discovered it so late.
1:10:49aethIf the function is creating something, there should be one (?) thread.alloc-region and it shouldn't be there if the function is merely modifying something
1:12:45pilltonThe statistical profile in SBCL allows you to profile allocations. (sb-sprof:with-profiling (:mode :alloc) ...)
1:13:39aethYes, that is one of the things I used to use. Statistical means it misses some tiny allocations, though.
1:27:25krwqhow do you create a metapackage? what I mean is to create a package - when someone does use-package on that he should automatically also use few other packages
1:28:13krwqi.e. (use-package :foo) would imply (use-package :foo.a) (use-package :foo.b) ...
1:28:40Bikeyou can't, but you can have foo export symbols from those other packages.
1:28:49pilltonYou can't do it declaratively. You can do it programmatically though.
1:32:47pilltonIt would be better if you used strings.
1:33:07krwqBike: is there some easy way to import all? some function or something? I'm not sure if it would be ok to just put some random code under the defpackage