freenode/#lisp - IRC Chatlog
Search
15:35:07
thetabit
How do I format a number as a string and if the number is less than 10 place a zero on the front. I am trying to print datetime so that it will be compliant with mysql datetime
15:37:55
thetabit
I've got something like (format nil "~[00~;01~;02~;03~;04~;05~;06~;07~;08~;09~]" <input>)
15:43:06
dlowe
thetabit: you might want to check out local-time which has formatting for stuff just like this
16:58:36
Fare
jasom: ok, so between 2013 and early 2017 --- I removed the name recently. Is anyone using it directly?
17:53:47
_user
one of them that looks pretty good to me is this one: https://github.com/fukamachi/prove
17:57:04
_user
I see a lot of reccomendations for FiveAm as well, but I haven't seen active dev on it
17:57:59
rpg
_user: I thought it had been recently overhauled to remove its ancient arnesi dependency. But TBH, I haven't been tracking it that carefully.
17:59:05
rpg
For reasons of stability, we use a local copy, and haven't had much time to pull changes from upstream. Which is actually a good sign that it isn't broken!
17:59:44
rpg
I would avoid RT, which is interesting, but crude (e.g., doesn't take well to multiple bits of testable software sharing the same image).
18:00:11
_user
yeah, I was going to avoid RT, based on your feedback I'm now considering prove/fiasco
18:00:36
rpg
we also have a "FiveAM ASDF" system that provides the ability to use 5AM to supply the TEST-OP for ASDF systems.
18:09:40
Shinmera
rpg: You can do (define-test foo (define-test bar)) which is the same as (define-test foo) (define-test bar :parent foo)
18:10:04
Shinmera
rpg: I implemented the 5Am compat layer so I should know what it means exactly in terms of 5Am, but I don't anymore.
18:10:10
jasom
minion: memo for Fare: quux-hunchentoot uses asdf/package and it appears to still be present in the most recent QL version
18:10:37
rpg
PS one suggestion: for ASDF I also added a test count, so that you can check and make sure that the expected number of checks is run. After being burned by that before.
18:11:14
rpg
:-( have to leave this interesting discussion because I'm getting temporarily evicted from my office by cleaners....
18:24:14
jasom
in doing ql2nix I have come up with a number of patches for various projects; it will be interesting to see if any of them are accepted upstream
18:26:41
jasom
Shinmera: I don't think so; the list so far (I'm about 70% of the way through all systems in QL) is here: http://paste.lisp.org/+7KTZ
18:27:44
jasom
which isn't *wrong* but is also usually unnecessary since asdf has an output directory
18:30:34
jasom
IIRC it's something like load-asd sets up a specific package for .asd files to be executed in and then the various fancy features added recently can be confused by it. This is all stuff I only slighty understood 6 months ago and have now forgotten, so may be 100% wrong now.
18:34:10
minion
Fare, memo from jasom: quux-hunchentoot uses asdf/package and it appears to still be present in the most recent QL version
18:45:53
Shinmera
I just had it in my template, so it's in pretty much every single ASD I've ever written
18:47:34
jasom
Shinmera: it's very nearly a non-problem; I think I can handle it now with ql2nix (bundling was broken on enough packages that now I fall back to a more traditional load structure).
18:50:37
jasom
however the architecture for ql2nix that was 90% complete when I stopped working on it last fall appears to be a good choice; There is one nix package for each "project" (I think that's the term quicklisp uses for a single source tarball) that just installs the source, and then each ASDF system gets its own nix package, which depends on the project package (and possibly other things).
19:43:25
Shinmera
I realised that i need to go back and rework some lower systems though, so I've been kinda stuck on that and progress is painfully slow
20:05:25
copec
This is what I have completed of my first real CL program: http://paste.lisp.org/display/353593
20:05:51
copec
I would appreciate any feedback and/or shooting down of things that anyone could offer.
20:10:33
copec
I know I could have just kept lexically binding the same names over, I was trying to make it readable for when I come back to it at some arbitrary future date
20:11:40
Shinmera
As for making it more readable, the nesting of m-v-b/push-fragment screams for a macro.
20:14:01
pillton
The CLHS entry for COMPILE says "is false if no conditions of type error or warning were detected by the compiler, and true otherwise."
20:14:18
specbot
Exceptional Situations in the Compiler: http://www.lispworks.com/reference/HyperSpec/Body/03_be.htm
20:14:28
pillton
But CLHS 3.2.5 says "Both compile and compile-file return three values, the second two indicating whether the source code being compiled contained errors and whether style warnings were issued."
20:16:08
Shinmera
copec: Anyway, if you really want the plus in the names, you still don't need to use ||. nfa+begin+a-in+a-out is a valid variable name.
20:17:08
copec
yeah, that came about from me experimenting with reading it when I wasn't in "the mode"
20:17:11
Shinmera
I'm too tired to give a more in-depth review of your code, so that's all the advice I can give. Sorry.
20:19:29
copec
FWIW I used caps to emphasize acronyms, Sets, and Capital Greek letters, with that other ugly symbol |NFA+begin+A-in+A-out+B-in+B-out+end| to help me keep track of where I was at when I was writing it.
20:22:10
copec
If I ever want to write code for more than just myself then I'll defer to your experience
23:21:07
White_Flame
if I load stuff through quicklisp, save an image, and run that image on another machine, will quicklisp have problems between the homedir being "/home/user1" on the first box, and "/home/user2" ont he second?
23:21:31
White_Flame
specifically, with intent to load new quicklisp systems after the image has been saved & moved
0:02:11
White_Flame
out of simplicity, I think I'll load quicklisp after deployment, just to be safe
1:37:08
anticrisis
About deployment, I saw this page about Chicken Scheme. Is there an equivalent piece of documentation about CL or a particular implementation? Google was (as usual) completely unhelpful. https://wiki.call-cc.org/man/4/Deployment
1:45:39
rpg
Fare has put into ASDF some semi-portable operations for building executables on platforms that support it. I say semi-portable, because some implementations do not support delivery of standalone executables.
1:46:30
rpg
TBH, I am not sure if the ASDF manual really documents how those operations are to be used. It might, but it might now.
1:48:47
rpg
Have a look at the ASDF manual (on common-lisp.net), and if it doesn't answer your questions, please submit them to the asdf-devel mailing list. That will help us improve the docs for everyone.
1:49:07
Fare
cl-launch also provides a portable wrapper around this functionality, accessible from the Unix command line
1:49:30
rpg
Fare: no -- I'm still banging out my proposal. I was hoping to get to the changelog, but I have 2 more sections to write, and it's looking like a long night. I was over-optimistic earlier.
3:06:44
beach
copec: You just did write for more than just yourself; you submitted it for others to read.