freenode/lisp - IRC Chatlog
Search
5:55:34
phoe
emaczen: https://github.com/sbcl/sbcl/blob/338faa43a1fa7931ac61adf24ac31793888287ef/src/runtime/immobile-space.c#L267
5:56:48
clintm
I've been looking around for options other than using a database (again) for a project, and I'm curious if any of you have suggestions. I've been reading through cl-prevalence and it seems like one reasonable alternative.
5:59:38
phoe
clintm: what do you want to store in your database? you could try a Lisp object store. beach has a very simple and customizable https://github.com/robert-strandh/Clobber while I used BKNR.DATASTORE in the past
6:06:09
clintm
At first glance, it looks like manardb is linux only? At least that's the impression that I get from the project page, and trying to load it in sbcl seems to confirm that.
6:08:34
beach
Ober: In what way manardb and leveldb nice? It is an honest question. I don't know them.
6:28:14
beach
Ober: In other words, what is it about those two alternatives that made you recommend them to clintm?
7:17:53
Ober
beach: manardb is pure cl and it's fast as hell. full clos layer on it. leveldb is just a hotness in k/v stores. and the binding in cl is pretty good
8:35:55
dim
hi! I think I will need to upload files to Amazon S3 in a streaming fashion (keeping only a chunk of the file content in memory at a time), and I wonder if cl-s3 or sz3 know how to do that... docs aren't that clear... anyone done that before?
10:39:03
jmercouris
I'm relatively new to working with alists, and I see that getf only returns the first instance matching
10:43:57
jmercouris
here's the data that I am trying to traverse: https://gist.github.com/0d224cebaf779802a099938e7726b253
10:47:34
jdz
A survey has a name, description and fields. Each field would be a subclass of a generic field class that has at least a description field, etc.
11:23:40
_death
jmercouris: there are many ways to skin that cat.. for example http://paste.lisp.org/display/139074 or https://gist.github.com/death/4ae8de1d11202faecd2d634190e53d8c
11:26:53
_death
but.. if you "never traversed a tree composed of lists".. then you should do just that, since it's a very useful skill in lisp
13:45:39
klm2is
Are these equivalent? `(("name" . ,name) ("and" . "more") and (list (cons "name" name) (cons "and" "more"))
14:08:53
White_Flame
klm2is: to be more specific, the 2 resulting shapes are structured exactly the same. The `-based one is tied to source code literals, which make them dangerous/unspecified to mutate later
14:10:24
White_Flame
even though the first cons in the list is most likely going to be new on each invocation
14:15:18
klm2is
but the point is, I was using this in two places and seeing some odd cross-contamination in backquoted forms
15:38:13
White_Flame
remix2000[m]: there are a lot of libraries called "trivial-<x>" which are small portability shims for accessing non-standard but common features
15:39:00
White_Flame
but CL itself is a standard that hasn't changed since its inception, so conformance means strong compatibility within its scope
15:41:34
White_Flame
that could be taken multiple ways, but the CFFI library works across implementations
15:41:54
on_ion
is there a way to ask a particular CL implementation to check conformity to CL for some code ?
15:41:58
White_Flame
when you cross platforms, that all depends on how the C library works per platform, regardless of Lisp
15:43:14
rumbler31
the "not that hard to test" case is to simple compile the concerned code on all available implementations
15:43:45
on_ion
rumbler31: nope im just following the conversation. "jackdaniel | if you write a conforming Common Lisp program then yes" <-- ok so how does one know if their progrm is comforming to Common Lisp? obvious question no ?
15:45:13
White_Flame
some sort of automated test for conformance would get into halting problem territory
15:45:49
rumbler31
implementations conform to the standard. code is simply compiled by the implementation. If you write code where the standard says "the behavior is undefined" then you should expect different behavior on different implementations
15:45:59
Bike
probably not halting problem, except for a few such requirements, like that macroexpansion always terminates
15:46:03
schweers
on_ion: It is not always straightforward to know if you’re writing strictly conforming code, although with time you can gain some experience. For this reason I run my code on at least one other implementation from time to time (mostly running the test cases). Normally I use sbcl, but use CCL for this reason. This has triggered some bugs in my code and made me more aware of what can be non-portable.