freenode/#lisp - IRC Chatlog
Search
18:49:08
phoe
I'd like one more review on https://github.com/sharplispers/split-sequence/pull/13 - I am in particular unsure about the two things sionescu has mentioned that I have not yet resolved.
18:49:26
phoe
1) The original code did not adhere to 80 chars per line - should I reformat it that way?
18:50:10
phoe
2) Should I drop the LIST branch of the typecase? My code does not traverse the whole list to determine its length, as per pjb's suggestion.
18:56:08
phoe
fe[nl]ix: I disagree, nitpicking is good when it comes to code reviews - bugs and issues are found this way
19:22:20
shka_
also this seems to be somewhat convoluted but i don't know if there are legit reasons for it
19:58:28
shka_
it smells funny to me, and although it is not objectively speaking bad, i simply think that it is convoluted
20:07:08
phoe
I just don't think my algorithmic skills are good enough to implement your final point
20:09:36
sjl
Writing code that works, doesn't cons excessively, and is backwards compatible with the existing behaviour is not as easy as it seems when you first see it.
20:10:36
phoe
backwards compatibility with what the original code did caused my code to become the ugly monstrosity that it was
20:11:08
phoe
and, honestly, I invite anyone who's up for it to write better code that still conforms to the split-sequence test suite - it's a challenge
20:12:07
sjl
e.g. you have to stop *exactly* where the original does, because the original returns the number of elements it processed as a separate value
20:12:10
shka_
phoe: i didn't track the split sequence, but i can see how something conceptually simple can devolve into monstrosity
20:12:51
sjl
the interaction between start/end, count, and remove-empty-subseqs is... nontrivial to get exactly the same as the original.
20:16:06
phoe
shka_: in other words: yes, you are correct, if we didn't need to conform to the original API and test suite, we'd gladly have made this code much nicer
20:19:24
sjl
(though performance was the entire reason phoe rewrote this in the first place, so really if we didn't care about performance we'd still have the original...)
20:22:26
sjl
shka_: feel free to PR it. If you can come up with something that performs as well and is clearer, I'm sure phoe would be willing to merge it
20:48:34
fe[nl]ix
Xach: can you please add phoe to https://github.com/orgs/sharplispers/teams/split-sequence-maintainers ?
1:01:16
saravia
sorry but, how i install anaphora, i dont have slime, only i have sbcl, and what is the complete simple way for install this?
1:12:23
PuercoPop
aeth: i used to use gensyms as system designators. Now I use strings directly or symbols if I want to load multiple systems
1:17:18
saravia
if i use `curl -0 https://beta.quicklisp.org/quicklisp.lisp` and run `(quicklisp-quickstart:install)` and run `(ql:add-to-init-file)' i have all?
1:23:28
PuercoPop
saravia: then Quicklisp appears to be loaded correctly. what does (ql:quickload "anaphora") return?
1:30:36
saravia
mmm when run the program anaphora uses, return this = Error loagind /home/saravia/.config/stumpwm/config: end of file on #<SB-SYS:FD-STREAM for "file /home/saravia/.slime/fasl/2.23/sbcl-1.3.15-linux-x86-64
1:33:22
PuercoPop
saravia: can you past your config file? From the error I'm guessing there is an unclosed parenthesis
1:55:47
PuercoPop
saravia: don't see anything wrong in that file, it may be in one of the conf files it loads. Btw alexandria comes with when-let which is the 'readable' version of AWHEN.
1:58:42
saravia
but the same code config, run at one laptop and pc, but at my personal laptop not works
2:11:01
defunkydrummer
saravia lol, you speak spanish. Both PuercoPop and me have spanish as native language
2:12:31
saravia
Error: en of file on #<SB-SYS:FD-STREAM for "file /home/saravia/.slime/fasl/sbcl-1.3.15-linux-x86-64/swank.fasl" {1002DD3FD3}>
2:15:28
defunkydrummer
saravia when you compile a .lisp file, the output is a "fast load" (.fasl) file
2:18:26
defunkydrummer
@zt30 we have a lot of threads on this on Reddit, let me fetch you the latest ones...
2:19:33
defunkydrummer
please answer all three questions so we can give you our best customer support
2:21:04
z3t0
ideally it would be something free, or at least with an evaluation version so I can determine whether it is a good fit. Multi-OS is a requirement. We are doing a GUI app but do have a quite a bit of graphics rendering. Our current app (web/js) manages to handle this using some wrappers around webgl, so ideally a layer of abstraction on top of opengl would be desired
2:21:41
z3t0
I am currently looking into commonqt, it seems like the only mature library (at least from my brief googling)
2:21:45
defunkydrummer
thank you for standing by. Our support team is processing your request, please stand by...
2:22:55
defunkydrummer
@z3t0 one option can be IUP. IUP is a binding to the IUP library by TecGraf (brazil). This is a cross-platform gui library and has OpenGL bindings as well. The lib is well documented and the IUP common lisp library looks elegant. It's in the making right now, so just hot from the oven
2:23:59
defunkydrummer
we have many other options, a very common one is Qt bindings, for which there are plenty of lisp libs like CommonQt. Or the EQL implementation, which is ECL + QT
2:25:30
defunkydrummer
more discussion: https://www.reddit.com/r/lisp/comments/8zvirn/cl_bad_for_native_guis_and_other_thoughts_on/
2:26:07
defunkydrummer
this topic has been discussed a lot really. z3t0 besides GUI libraries, there are also libs dedicated to OpenGL as well
2:26:28
defunkydrummer
i think IUP is peculiar because it's a GUI lib that also includes OpenGL bindings
2:26:50
defunkydrummer
haven't tried it yet but the sample code looks elegant and it's a fresh (right now. april 2019) lib so it isn't stale