dbotton has quit [Read error: Connection reset by peer]
yonkunas has quit [Quit: Connection closed for inactivity]
dilated_dinosaur has quit [Ping timeout: 272 seconds]
nicktick has joined #lisp
jealousmonk has joined #lisp
Nilby has joined #lisp
shifty has quit [Ping timeout: 258 seconds]
shifty has joined #lisp
rumbler31 has quit [Ping timeout: 260 seconds]
dbotton has joined #lisp
dbotton_ has quit [Ping timeout: 272 seconds]
Lord_of_Life has quit [Ping timeout: 264 seconds]
Lord_of_Life has joined #lisp
mhd2018 has joined #lisp
mhd2018 is now known as mhdfreenode
dsiypl4 has quit [Quit: Leaving]
jealousmonk has quit [Read error: Connection reset by peer]
jealousmonk has joined #lisp
remexre has quit [Read error: Connection reset by peer]
remexre has joined #lisp
jealousmonk has quit [Read error: Connection reset by peer]
jealousmonk has joined #lisp
terpri has quit [Ping timeout: 240 seconds]
terpri_ has joined #lisp
flip214 has quit [Read error: Connection reset by peer]
flip214 has joined #lisp
elimik31 has quit [Remote host closed the connection]
iissaacc has joined #lisp
ukari has quit [Remote host closed the connection]
ukari has joined #lisp
jibanes has quit [Ping timeout: 272 seconds]
jibanes has joined #lisp
edgar-rft has joined #lisp
dbotton has quit [Ping timeout: 272 seconds]
dbotton_ has joined #lisp
dbotton_ has quit [Read error: Connection reset by peer]
dbotton has joined #lisp
dbotton_ has joined #lisp
torbo has quit [Remote host closed the connection]
semz has quit [Ping timeout: 260 seconds]
taketasama has joined #lisp
dbotton has quit [Ping timeout: 264 seconds]
jesse1010 has quit [Ping timeout: 258 seconds]
sjl has joined #lisp
semz has joined #lisp
semz has quit [Changing host]
semz has joined #lisp
contrapunctus has left #lisp ["Disconnected: Replaced by new connection"]
contrapunctus has joined #lisp
shifty has quit [Ping timeout: 256 seconds]
contrapunctus has left #lisp ["Disconnected: Replaced by new connection"]
contrapunctus has joined #lisp
dbotton has joined #lisp
drl has quit [Remote host closed the connection]
<dbotton>
is there a way to mark a local variable as a constant?
<dbotton>
so that (let ((x 1)) (setq x 10)) would produce an error?
iissaacc has quit [Ping timeout: 258 seconds]
<Alfr_>
dbotton, even (defconstant foo 12) (setf foo 13) doesn't need to trigger an error. It's only undefined behavior.
<aeth>
afaik, not portably, but if there was a way it would be through DECLARE
<aeth>
implementations are afaik permitted to add a (declare (whatever foo)) if they wanted to
iissaacc has joined #lisp
<dbotton>
interesting
<dbotton>
is there a sort of semi standard set of declare that works in most compilers?
sts-q has quit [Remote host closed the connection]
wxie has joined #lisp
iissaacc has quit [Ping timeout: 272 seconds]
<dbotton>
is there a reason why the standard felt the need for a deconstant but not on a local basis?
<aeth>
I don't think there's a way, but (declare) is valid so if you had to do (let ((x 1)) (declare #+your-cl (immutable x)) (setq x 10)) you could still write perfectly portable code here.
<aeth>
(and I think they're supposed to ignore unrecognized forms inside of DECLARE, so I think but am not sure, that that would just be a warning if you didn't do that)
<dbotton>
warning still offers some robustness
<aeth>
No, I mean, e.g. SBCL will warn on an unrecognized DECLARE.
wxie has quit [Client Quit]
<dbotton>
oh :(
ex_nihilo has joined #lisp
<aeth>
this definitely could work, though. (let ((x 42)) (declare #+whatever (whatever x)) x)
wxie has joined #lisp
<Alfr_>
Only after a (declaration whatever), I think, aeth.
<aeth>
Anyway, that's probably my guess as to why it's not in the standard. Because they probably anticipated that they didn't create an exhaustive list of useful declarations
<dbotton>
the immutable specifier or why open ended?
jealousmonk has quit [Read error: Connection reset by peer]
jealousmonk has joined #lisp
<aeth>
dbotton: Sorry, what I mean is I don't think there was a particular need to include this in the standard since it gave implementations the power to add it, and they probably weren't really thinkinng about this sort of thing 30 years ago.
<aeth>
dbotton: You could also, yourself, create a macro that does this without even code-walking, since DEFCONSTANT exists. Just symbol-macrolet
jealousmonk has quit [Read error: Connection reset by peer]
contrapunctus has left #lisp [#lisp]
<aeth>
dbotton: So I guess there is a way to mark a variable as a constant if you're willing to have a hidden DEFCONSTANT variable
jealousmonk has joined #lisp
Alfr has joined #lisp
Alfr_ has quit [Ping timeout: 260 seconds]
<beach>
Good morning everyone!
<dbotton>
thanks aeth
<dbotton>
aeth would that create an error at compile time or runtime?
wxie has quit [Quit: wxie]
<aeth>
dbotton: probably depends on the implementation because it says it's undefined in the spec, but it's an error in SBCL. e.g. (defconstant +foo+ 42) (defun foobar () (symbol-macrolet ((foo +foo+)) (setf foo 43)))
<aeth>
(I turned it into a function so it's not being called directly.)
<beach>
dbotton: Did you try to declare the type to (eql 42)?
Nilby has quit [Ping timeout: 240 seconds]
<Bike>
http://ix.io/2Bzn you can do such horrible things with macros
<dbotton>
beach I apologize I don't understand your question
<beach>
Did you try: (let ((x 42)) (declare (type (eql 42) x)) x)
<beach>
I guess maybe that doesn't solve your problem.
<beach>
Forget what I said.
<aeth>
it solves the specific problem, but not the general problem, so maybe it's good enough depending on the task
<aeth>
(it'll work for chars/numbers/symbols)
sts-q has joined #lisp
<aeth>
dbotton: Sorry, I realize I didn't directly answer your question. It's a compile time error because it's an error when I DEFUN, which won't call the code directly
<dbotton>
thanks
<aeth>
(but not portably, since DEFCONSTANT doesn't have to error)
<aeth>
(but any reasonable implementation should error there)
aaaaaa has quit [Quit: leaving]
<dbotton>
I imagine having a (declare immutable x) should have some value for optimizations
<dbotton>
sorry I imagine that should be (define (immutable x))
<Bike>
not really. the compiler can just determine if a variable is immutable by looking at how many places it's assigned.
* beach
was beaten to it by Bike.
<dbotton>
so we need a human discipline macro
<dbotton>
something like tools I have used for insuring style guides
<aeth>
the symbol-macrolet to a defconstant should produce the same code in an optimizing compiler (SBCL at the very least)
<aeth>
it'll just prevent the programmer from messing up and adding a SETF
sts-q has quit [Ping timeout: 260 seconds]
<aeth>
If you want more, you'd want an immutable type so it can be optimized outside of a function's scope, too.
<dbotton>
then could use the declare type
sts-q has joined #lisp
<dbotton>
I have not yes started on clos, so sorry if this is ignorant, would it be possible to extend a built in type and then declare type it on the new type?
<aeth>
The thing itself always has a type, and the binding can have a type if DECLAREd (technically, it always has it, but it's normally T).
<aeth>
So the type declaration doesn't have an impact on the object itself, except that it might error if it mismatches (and it might not... only CHECK-TYPE guarantees the type error)
jealousmonk has quit [Ping timeout: 272 seconds]
<dbotton>
I realize this is probably the wrong though process to start with for Lisp, ie trying to type the variable not the data
<aeth>
For the other part of your question, afaik, you normally can't extend built-in types, but sometimes you can, such as trivial-gray-streams or trivial-extensible-sequences
<beach>
dbotton: I think you are right. It is common for people coming from other languages to overuse type declarations.
jealousmonk has joined #lisp
<aeth>
Generally, type declarations should only matter if for arrays/vectors, numbers, and arrays/vectors of numbers
<aeth>
At least as far as performance is concerned. Otherwise, the added checks might actually deoptimize the code.
<dbotton>
you mean to constrain to subsets?
<beach>
dbotton: I read somewhere that languages with manifest typing force the programmer to come up with types that may not be true later on in the development process.
<dbotton>
In years of dev I have not found that to be the case
Bike has quit [Quit: Lost terminal]
<dbotton>
at least in Ada where the "type" is the central abstraction
<beach>
Oh, you are the Ada person. I remember now.
<dbotton>
My interests are in compile time computing :)
<aeth>
well, that's kind of boring in CL because you can just EVAL-WHEN
<beach>
dbotton: yes, you came to the right place since you can do arbitrary computations at compile time.
<aeth>
You can force someone to win a (complete, graphical) game before the code compiles if you want to. Just put a call to launch the game in an EVAL-WHEN.
jealousmonk has quit [Quit: Quit]
<dbotton>
In Ada it is all about using the Type to insure correctness of code, a form of compile time computing that has worked very well for me
<dbotton>
I think once I have fully groked the CL approach will open something open in the avenue more
<beach>
dbotton: I am curious, then, as to why you want to use Common Lisp, and why you are trying to do the same things with Common Lisp that you have been so successful with using Ada.
<dbotton>
open -> up
<dbotton>
I have a lot of experience with C/C++ other languages as well, the Ada approach worked well, but realized I never actually learned lisp all these years
<dbotton>
not even sure why
<dbotton>
So started that direction and saw the compile time angle
<beach>
dbotton: Then I seriously suggest you try to use it as it is normally used, rather than trying to emulate the Ada programming style with it.
<dbotton>
Something more expressing perhaps
<dbotton>
for sure
<beach>
The languages are fundamentally different.
<dbotton>
As I am do thing just ideas that come up to explore for future
<dbotton>
few other reasons interested me in lisp, age of standard, number of implementations available, quality of tool sets etc
<aeth>
dbotton: imo, there's a bit of a tension in Common Lisp between interactive development and compile time computation... both are more of a priority in CL than in most languages.
<aeth>
Interactive development means you can redefine things and you want to be able to have fast compilation times.
<dbotton>
I certainly see the benefits of both
<dbotton>
My approach for my personal projects has been a very lisp like one even the Ada very ridged
<dbotton>
grown from the ground up
shifty has joined #lisp
<dbotton>
But being forced in to the type model has also improved the quality of the results I think
<dbotton>
so I am hoping to see what I can come up with
<dbotton>
The other pluses I mentioned means whatever I do come up with has a long future
<no-defun-allowed>
A dynamic approach might be better if, by the time you would come up with a model to show correctness with, it wouldn't reflect on your current requirements. And there aren't any type systems that I know of that will let you migrate state from one model to another like in Common Lisp.
<dbotton>
no-defun-allowed that is exactly when I am looking to embrace
<dbotton>
beach, the other reason for the switch is Ada is now for all intensive purposes a one vendor product and they have more or less specialized in one niche
shifty has quit [Ping timeout: 260 seconds]
<dbotton>
so many of my personal projects are ideas on dev tools, techniques etc
<dbotton>
seems like all the pieces are hear
bhartrihari has joined #lisp
<dbotton>
enjoying the trip so far very much
<dbotton>
These days I make my living for the most part outside the computer world so I can "afford" to invest in something more then job easy languages also
shifty has joined #lisp
<no-defun-allowed>
In my probably significantly shorter experience with Lisp, the SBCL compiler catches type errors (on functions involving inbuilt types), or I can provoke them by poking at them with a REPL in about a minute.
<no-defun-allowed>
Though I heard Ada also has some more in terms of formal verification tools than other static languages.
<beach>
dbotton: For compile-time computations, I recommend the book "On Lisp" by Paul Graham.
<dbotton>
going through it already :)
<aeth>
There's no reason why there couldn't be a CL with even more static verification than SBCL
<dbotton>
I think so to aeth
<aeth>
It's tricky because things can be redefined, but not impossible
<dbotton>
and something I may like to do even
<beach>
I am all for static verification, but not so much for manifest typing.
<dbotton>
for sure
<dbotton>
only worth it if not annoying while trying to develop from ground up
<dbotton>
I really wish I had taken a look at cl years ago
<beach>
You are not alone.
<beach>
People tend to spend a lot of time and energy to avoid using Common Lisp.
nicktick1 has joined #lisp
<dbotton>
It is the problem of having to many choices
<dbotton>
mean Lisp itself
<dbotton>
People are not comfortable with too many ways to reach same conclusion
<dbotton>
that level of creativity is scary
nicktick has quit [Ping timeout: 264 seconds]
<no-defun-allowed>
Oh, also note that if I find an error like that, the thread that signaled an error pauses and I'm presented with a backtrace and some restarts, which usually suffice to test a solution without stopping the program. That is mostly non-present in most dynamically typed languages (I hesitate to call them "dynamic languages"), which makes them the "worst of both worlds", as they are apparently unsuitable for static
<no-defun-allowed>
analysis, and aren't modifiable at runtime.
<dbotton>
exactly reason I never found a one worth it and used them all
nicktick has joined #lisp
nicktick1 has quit [Ping timeout: 240 seconds]
nicktick1 has joined #lisp
nicktick has quit [Ping timeout: 256 seconds]
<dbotton>
So to sum up, interests are the general approach to development is like what I have used for years, the tools are there, the quality of tools is there, the quality of community supporting the tools is there, the language is ideal for my current interests in general ie compile time computing, and believe Lisp a good long term host for my creative
<dbotton>
ideas
<dbotton>
the only negative, and probably singe reason never looked in to it, the readability of it
<dbotton>
I stumbled on Ada because felt that recording my ideas in a human readable language a good idea
<no-defun-allowed>
I never found precedence rules particularly friendly, but it's open for debate if I'm a "human".
<dbotton>
and it is the most readable of any language with a good modern toolset and at the time looked promising
<dbotton>
agreed I always () anything that precedence is an issue for that reason
<dbotton>
better ugly and correct
<dbotton>
thank you all though for the direction and knowledge, still have much more to go before can similarly contribute
<no-defun-allowed>
Like, in mathematics classes I'd have written out long equations that weren't in a nice form, and couldn't parse it later. Then everyone else tells me that parenthesised prefix notation is harder.
orivej has quit [Ping timeout: 240 seconds]
nicktick has joined #lisp
nicktick1 has quit [Ping timeout: 261 seconds]
mmohammadi981266 has joined #lisp
<dbotton>
just went through the sbcl manual, didn't see anything there that would help
<scymtym>
article: "During the development of Nyxt we quickly felt dissatisfied with our initial hook implementation (based on Emacs)." second sentence of the linked issue regarding merging into serapeum: "In Next we use https://github.com/scymtym/architecture.hooks"
jw4 has quit [Read error: Connection reset by peer]
jw4 has joined #lisp
drl has joined #lisp
Alloc has quit [Ping timeout: 258 seconds]
Alloc has joined #lisp
<jmercouris>
well, we used to use
<jmercouris>
we now use our own hooks that we built on top of/into serapeum
frgo has quit []
<scymtym>
i understand, i'm pointing out an inaccuracy with respect to previous work
<jmercouris>
I see
<jmercouris>
so you think we should say that they were based on cl-hooks rather than Emacs?
<scymtym>
you decide
<jmercouris>
I'll edit the article to include references to both
epony has joined #lisp
<phoe>
I understood it more like "we first used a custom emacslike implementation, then used scymtym's hooks, and now we use this current implementation from serapeum"
<jmercouris>
the concept was Emacs, and then we picked cl-hooks, but you make a good point
davepdotorg has quit [Remote host closed the connection]
__jrjsmrtn__ has quit [Ping timeout: 272 seconds]
<jmercouris>
I've now changed the sentence to:
<jmercouris>
During the development of Nyxt we quickly felt dissatisfied with our
<jmercouris>
initial hook implementation (based on Emacs, built with cl-hooks
davepdotorg has quit [Remote host closed the connection]
davepdot_ has joined #lisp
<scymtym>
phoe: i understood it that way as well, because i was involved and already knew, but i don't think you could get that from the previous version of the article. making the influences clear seems important since, for example, scymtym/architecture.hooks was modeled after generic functions and to some extent Boost.Signals rather than what Emacs does
<jmercouris>
thank you for your feedback scymtym
<scymtym>
jmercouris: sure (i currently get a 502 for the URL, so i couldn't look at the revised version)
<jmercouris>
press refresh, I just updated the article
<jmercouris>
it should work now
__jrjsmrtn__ has joined #lisp
<phoe>
seems to work for me now
<scymtym>
yes, works now
IPmonger has quit [Ping timeout: 246 seconds]
IPmonger has joined #lisp
IPmonger has quit [Ping timeout: 260 seconds]
drl has quit [Quit: Leaving]
shka_ has quit [Quit: Konversation terminated!]
Stanley00 has quit []
Alloc has quit [Ping timeout: 260 seconds]
Aurora_v_kosmose has quit [Remote host closed the connection]
Alloc has joined #lisp
Aurora_v_kosmose has joined #lisp
_whitelogger has joined #lisp
<beach>
jmercouris: There is no such thing as "a lambda" in Common Lisp. Maybe there is in Emacs Lisp, but not in Common Lisp.
Bike has joined #lisp
iissaacc has quit [Read error: Connection reset by peer]
iissaacc has joined #lisp
bitmapper has quit [Quit: Connection closed for inactivity]
uragagarin34 has joined #lisp
shifty has joined #lisp
<jmercouris>
OK, I think we all know I mean anonymous function
<jmercouris>
I'm not about to confuse my readers :-D
<beach>
It is always preferable to use the right terminology.
<jmercouris>
ideally, yes, maybe I'll put a note about it
uragagar_ has joined #lisp
EvW has joined #lisp
uragagar_ has quit [Client Quit]
uragagarin34 has quit [Ping timeout: 260 seconds]
jonatack has quit [Read error: Connection reset by peer]
<beach>
So the target group for this text consists of people who don't know Common Lisp?
jurov_ has joined #lisp
jurov has quit [Ping timeout: 256 seconds]
<jmercouris>
yes, because I want to get more people interested in Common Lisp
jeosol has quit [Remote host closed the connection]
Nilby has joined #lisp
shka_ has joined #lisp
Aurora_v_kosmose has quit [Remote host closed the connection]
Aurora_v_kosmose has joined #lisp
wsinatra has joined #lisp
<beach>
You are not doing them a favor by introducing incorrect terminology.
<beach>
It would then be better to use the correct terminology, and add notes about names of similar constructs in other languages.
<phoe>
Would anyone be interested in reviewing my first/newest book, "The Common Lisp Condition System", on Amazon? The deal is that Apress can offer free ebook versions of the book to some people, and they would like to get a review posted on Amazon in return.
<phoe>
(If yes, please query me - let's not spam #lisp with that too much.)
wsinatra has quit [Quit: WeeChat 2.9]
wsinatra has joined #lisp
wsinatra has quit [Client Quit]
<drmeister>
How worried should I be about reproducibility of random number sequences generated using (random <x> <random-state>) where I load <random-state> from a saved <random-state>?
<drmeister>
It's arithmetic right? Completely deterministic. I should be able to reload a random-state 10 years from now and generate the same sequence if the random number generator algorithm hasn't changed.
<phoe>
Notes: One important use of make-random-state is to allow the same series of pseudo-random numbers to be generated many times within a single program.
<phoe>
"A random state object contains state information used by the pseudo-random number generator."
<drmeister>
It still makes me anxious.
<phoe>
so, yes, if the algorithm has not changed then knowing the random state is enough to reconstruct the PRNG state
<drmeister>
Will one still be one and zero still be zero in the future?
<Xach>
drmeister: you could always use your own algorithm if you want full predictability
<phoe>
and therefore reconstruct the future generated numbers
<Xach>
drmeister: there are a few readily available
<Xach>
by "your own" i don't mean write your own, i mean use a RNG library that someone else wrote, and that you can fully understand and control
<phoe>
but then you need to assume that your lisp implementation that'll exist in 10 years from now will have no changes to its algorithm
luna_is_here_ has joined #lisp
<phoe>
so Xach's solution might be slightly better
<Xach>
and that you can use into the future if the implementation changes
<phoe>
^
<Xach>
there's the mt19937 library for example
<drmeister>
Since I control the lisp implementation I could make sure the algorithm doesn't change. We are using the boost::random library.
wsinatra has quit [Read error: Connection reset by peer]
dbotton has joined #lisp
<drmeister>
Xach: We are using std::mt19937 - huh.
<drmeister>
And that is a standard algorithm - is it?
<drmeister>
Googling it.
luna_is_here has quit [Ping timeout: 256 seconds]
<Xach>
mersenne twister
<Xach>
algorithms with catchy names become more popular
wsinatra has joined #lisp
wsinatra has quit [Client Quit]
ryoshu has left #lisp [#lisp]
<drmeister>
So no - we aren't using boost::random anymore - it's standard C++ now.
wsinatra has joined #lisp
wsinatra has quit [Client Quit]
wsinatra has joined #lisp
<Xach>
drmeister: maybe that's enough, then
dbotton_ has quit [Ping timeout: 256 seconds]
<Bike>
really, the boost library was just incorporated into the C++ standard
<_death>
often there's benefit from using your own.. for example I recently switched to using a xoshiro implementation in a program that resulted in a significant speedup, and it also solved the issue of initializing the random state to a particular one throughout runs (can usually be done, nonportably)
<drmeister>
Using the mersenne twister means I'll get the same random number sequence on whatever it runs on - right? Say we move Cando to ARM - the same saved random-state will get me the same sequence of pseudo random numbers. Correct?
<Bike>
yeah
EvW has quit [Ping timeout: 260 seconds]
hendursa1 has quit [Quit: hendursa1]
<Bike>
it doesn't incorporate hardware randomness or anything if that's what you're thinking
hendursaga has joined #lisp
<drmeister>
Ok.
<Bike>
a PRNG is basically deterministic. it's just an algorithm that outputs a sequence of integers based on an input state
<drmeister>
I added the ability to readably print and read random-state yesterday (it was an oversight for a long time).
<drmeister>
My brain knows that - my heart is anxious.
<phoe>
why the \"?
<phoe>
oh wait
<phoe>
I see now
<Nilby>
This is one of the reasone people make secure enclavess with their own chip. Maybe the best thing to do is test that your same random code & state produces the same results.
<drmeister>
I want to use a random-state as the seed for generating molecular sequences that will be difficult to impossible to reverse engineer.
elosant has joined #lisp
<drmeister>
I will write out the sequences - but they will be generated from the random number generator - if they became inconsistent - there would be trouble.
<drmeister>
_death: That is interesting - I was wondering about that yesterday. Thank you.
<drmeister>
I don't have 624 consecutive outputs at this point - I have around 360 and they are each modulo some value.
<drmeister>
I'm kind of starting over however - so I'll keep all of this in mind.
<dbotton>
phoe I would love to review it :)
paul0 has quit [Quit: Leaving]
ex_nihilo has quit [Quit: Leaving]
Stanley00 has joined #lisp
madage has quit [Ping timeout: 240 seconds]
Stanley00 has quit [Read error: Connection reset by peer]
madage has joined #lisp
ukari has quit [Remote host closed the connection]
ukari has joined #lisp
shifty has quit [Ping timeout: 260 seconds]
shifty has joined #lisp
jonatack has joined #lisp
orivej has quit [Ping timeout: 265 seconds]
pankajsg has quit [Ping timeout: 246 seconds]
rwcom602803 has joined #lisp
rwcom60280 has quit [Ping timeout: 240 seconds]
cg505 has quit [Ping timeout: 256 seconds]
OlCe has quit [Ping timeout: 256 seconds]
frost-lab has quit [Quit: Connection closed]
davepdot_ has quit [Read error: Connection reset by peer]
treflip has quit [Quit: WeeChat 2.6]
davepdotorg has joined #lisp
OlCe has joined #lisp
davepdotorg has quit [Ping timeout: 246 seconds]
davepdotorg has joined #lisp
cg505 has joined #lisp
elimik31 has quit [Remote host closed the connection]
davepdotorg has quit [Ping timeout: 265 seconds]
bitmapper has joined #lisp
Cymew has quit [Ping timeout: 240 seconds]
davepdotorg has joined #lisp
hnOsmium0001 has joined #lisp
random-nick has joined #lisp
kiroul has joined #lisp
jeosol has joined #lisp
sjl_ has joined #lisp
igemnace has quit [Ping timeout: 260 seconds]
kini has quit [Remote host closed the connection]
igemnace has joined #lisp
astronavt has joined #lisp
kini has joined #lisp
dbotton_ has joined #lisp
rwcom602803 has quit [Quit: Ping timeout (120 seconds)]
dbotton has quit [Ping timeout: 256 seconds]
rwcom602803 has joined #lisp
<astronavt>
are there any good lisp blogs to follow or places to follow updates in the lisp community, e.g. new library releases and such?
<astronavt>
(other than here of course)
<phoe>
astronavt: planet lisp
<astronavt>
thanks
<phoe>
it's an aggregator of lisp feeds
<phoe>
so it has stuff from a lot of places
<astronavt>
i see, very nice
<Xach>
I need to find some new blogs also
<Xach>
Not so many people are blogging about using common lisp these days
elosant has quit [Quit: WeeChat 2.9]
<astronavt>
its a shame. i can see why people dont want to use it nowadays, but its such a cool language id hate to see it fall too far into obscurity
<astronavt>
if anything the dependence on SLIME is too much of an obstacle. if you had good vscode/atom support for it i bet people would start using it more
<astronavt>
(personally i cant stand emacs and i do my entry-level lisp coding in vim)
<saganman>
wow
<saganman>
I love emacs
<phoe>
yes, there's a tooling issue, and I wish there was a proper swank client for vscode
<phoe>
atom and sublime text seem to get slime clients of their own, though, and I can see they have some development ongoing
<beach>
astronavt: Plenty of people want to use Common Lisp these days.
<drmeister>
Yeah - and some of us who use it a lot are more doers than talkers.
<beach>
astronavt: But I seriously don't think that the lack of vscode/atom support would attract more people.
<drmeister>
That's not to denigrate talkers - I'm all fine with them.
<Xach>
beach: I disagree (with what I assume you meant)
dbotton_ has quit [Read error: Connection reset by peer]
<_death>
planet lisp is blue and there's too much left to do
dbotton has joined #lisp
<phoe>
I think that good vscode/atom/sublime support for Lisp (by good I mean comparable with slime/sly) would be a really big boon to its popularity nowadays
<Xach>
I think it's good to get rid of meaningless difficulties so you can get on to meaningful difficulties
<beach>
astronavt: Every so often, someone shows up here with a miracle solution to making more people use Common Lisp, and what they then tell us is their own personal little problem they have with Common Lisp. But that does not mean that many others avoided Common Lisp for that reason, and certainly not that fixing the problem would attract more people.
<beach>
But I will shut up now, because I can see that my take on this is not shared by others.
<Xach>
"lisp does not work with my favorite editor" is a meaningless difficulty. better to get past that to something more meaningful.
<phoe>
poor/inaccessible tooling, IMO, is a problem that would attract more people
<phoe>
it doesn't mean that you need to shut up though
<Xach>
that is just an excuse to spend time with his admittedly small family
<Xach>
"it is hard to get and install libraries" is a meaningless difficulty, "there aren't any libraries that do what i need" is a meaningful one
<astronavt>
to be clear, i hardly claimed it was a miracle solution
<astronavt>
i said it was a shame that more people didnt use it and suggested one thing that could help based on my own personal experience & talking to others
<Xach>
astronavt: i think that's fairly straightforward and not too controversial.
<astronavt>
i would hope so, i didnt intend to be controversial
davepdotorg has quit [Remote host closed the connection]
<Xach>
we get more than our fair share of people who have a plan like "if the standard functions were all generic lisp would be more popular" or "if the standard function names were all more logical lisp would be more popular" or "if you made stuff immutable and ran it on the jvm with incompatible syntax lisp would be more popular"
<Xach>
only the last one is provably true
davepdotorg has joined #lisp
<_death>
if only Lisp had J or X in its name...
<Xach>
that is tongue in cheek - that's not necessarily the cause of the popularity
<astronavt>
fair enough
isBEKaml has joined #lisp
<astronavt>
the stdlib is definitely unusual compared to modern languages. but i dont think that is what turns people off. im sure most people here see the hyperspec as full of features, not cruft
<astronavt>
if anything that is part of what makes CL interesting and gives it characters
<astronavt>
character*
<cl-arthur>
"Modern languages"
davepdotorg has quit [Ping timeout: 264 seconds]
isBEKaml has joined #lisp
isBEKaml has quit [Changing host]
<astronavt>
cl-arthur, well... newer
loli has joined #lisp
<dbotton>
beach I agree with you. Using a language means either job or become an enthusiast. Becoming an enthusiast means appreciating the language
<dbotton>
that comes with education
EvW has joined #lisp
<dbotton>
lisp has a high bar. not sure that is a bad thing though
<jmercouris>
am I correct in thinking that local-time does not have a way to parse +rfc-1123-format+?
<jmercouris>
it seems you can only format out to that
<cl-arthur>
astronavt: most programming languages are stuck in the 60s anyway, according to Alan Kay :D
<cl-arthur>
most programming*
ukari has quit [Remote host closed the connection]
ukari has joined #lisp
<|3b|>
Xach: try (graph-paper::graph-paper)
<jmercouris>
(local-time:parse-timestring "Tue, 26 Oct 2004 14:06:44 -0500") -> :'(
<jmercouris>
cl-date-time-parser it is...
shifty has quit [Ping timeout: 260 seconds]
shifty has joined #lisp
<jmercouris>
how to make slime prompt for slime-lisp-select by default?
<Xach>
|3b|: thanks. it crashed on me. possibly a futile attempt on my mac laptop? don't want to bother you more about it, it looked fun to try.
dbotton has quit [Ping timeout: 258 seconds]
<|3b|>
hmm, any stack trace?
<|3b|>
and also, does (cl-glut-examples:render-to-texture) from cl-glut-examples work?
<Xach>
|3b|: 2020-10-22 12:20:11.839 sbcl[22877:2109368] GLUT Fatal Error: internal error: NSInternalInconsistencyException, reason: NSWindow drag regions should only be invalidated on the Main Thread!
<Xach>
then sbcl dies
<|3b|>
try running it from *inferior-lisp*
<|3b|>
or from a shell
<jackdaniel>
there is also trivial-main-thread
<Xach>
i just tried that and got a fanciful new crash, hang on
<Xach>
|3b|: cl-glut-examples:render-to-texture worked (but the texture was in a small part of a big window). running graph-paper resulted in The function CL-GLUT:MOUSE-WHEEL-FUNC is undefined.
<Xach>
maybe i just need to work out a websocket js 2d drawing gateway or something.
sammich has joined #lisp
sammich has quit [Changing host]
sammich has joined #lisp
isBEKaml has quit [Quit: Leaving]
Steeve has joined #lisp
shifty has quit [Ping timeout: 256 seconds]
shifty has joined #lisp
<scymtym>
Xach: are these demos available online?
Lycurgus has joined #lisp
<Xach>
scymtym: i don't have any directly handy. i remember seeing interactions where each on-screen object had a corresponding instance to be inspected and possibly modified on the fly in a seamless way. buttons, windows, etc. nothing conceptually unusual but an impressive level of "just works" energy
sts-q has quit [Remote host closed the connection]
<phoe>
we might really need a quicklisp mirror on a service that doesn't need to follow american embargo rules
<jackdaniel>
that will be a military trade secret export, 20y penalty in prison ,)
<phoe>
is ironclad a weapon?
<Xach>
a small price to pay to ensure everyone in the world has access to 27 different personal utility libraries
<Xach>
and 53 test frameworks
<phoe>
oh yes I was waiting for the test frame----wait are these numbers made up
<phoe>
or did you actually check
<pfdietz>
They're more goals than measurements.
<jackdaniel>
hang on, I have 2.5am somewhere on my disk, it is bundled with a reader macro to type lists with [foo 1 2]
xlei has joined #lisp
akoana has joined #lisp
<scymtym>
please make it silently switch from [ to { in case my URL library which also installs a reader macro for [ is already loaded. don't worry, it pushes multiple things onto *FEATURES* so you should have no trouble detecting its presence
EvW has quit [Ping timeout: 240 seconds]
wsinatra has quit [Ping timeout: 260 seconds]
jeosol has quit [Remote host closed the connection]
jonatack has joined #lisp
<eschulte>
Does anyone know of an asdf defsystem configuration (maybe using a combination of :in-order-to and symbol-call) to get ASD to automatically ql:quickload any missing dependencies when calling asdf operations (e.g., asdf:test-system)? I've half-heartedly tried this once or twice with no success.
Xach has quit [Ping timeout: 264 seconds]
wsinatra has joined #lisp
galex-713 has joined #lisp
EvW has joined #lisp
miasuji has joined #lisp
saganman has quit [Quit: so long and thanks for all fish]
shifty has quit [Ping timeout: 256 seconds]
shifty has joined #lisp
dbotton_ has quit [Read error: Connection reset by peer]
dbotton has joined #lisp
skapata has joined #lisp
rippa has joined #lisp
* edgar-rft
FFIs to ancient aliens
madage has quit [Remote host closed the connection]
abbe has quit [Quit: “Everytime that we are together, it's always estatically palpitating!”]
abbe has joined #lisp
madage has joined #lisp
hendursaga has quit [Remote host closed the connection]
hendursaga has joined #lisp
shifty has quit [Ping timeout: 260 seconds]
shifty has joined #lisp
gravicappa has quit [Ping timeout: 240 seconds]
skapate has joined #lisp
gravicappa has joined #lisp
hiroaki has joined #lisp
skapata has quit [Ping timeout: 272 seconds]
liberliver has quit [Ping timeout: 256 seconds]
skapate is now known as skapata
loli has quit [Quit: WeeChat 2.9]
gravicappa has quit [Read error: Connection reset by peer]
gravicappa has joined #lisp
gravicappa has quit [Read error: Connection reset by peer]
gravicappa has joined #lisp
gravicappa has quit [Read error: Connection reset by peer]
shifty has quit [Ping timeout: 240 seconds]
shifty has joined #lisp
gravicappa has joined #lisp
shifty has quit [Ping timeout: 256 seconds]
shifty has joined #lisp
miasuji has quit [Quit: Leaving]
shifty has quit [Ping timeout: 260 seconds]
shifty has joined #lisp
madage has quit [Ping timeout: 240 seconds]
madage has joined #lisp
narimiran has quit [Quit: leaving]
scymtym has quit [Ping timeout: 260 seconds]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
shka_ has quit [Ping timeout: 260 seconds]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
EvW has quit [Ping timeout: 260 seconds]
Xach has joined #lisp
amb007 has quit [Ping timeout: 264 seconds]
astronavt has quit [Quit: Leaving]
dbotton_ has joined #lisp
shifty has quit [Ping timeout: 260 seconds]
amb007 has joined #lisp
ukari has quit [Remote host closed the connection]
EvW has joined #lisp
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
miasuji has joined #lisp
srhm has quit [Read error: Connection reset by peer]
v0|d has joined #lisp
srhm has joined #lisp
astronavt has joined #lisp
dbotton_ has quit [Ping timeout: 260 seconds]
wsinatra has quit [Quit: WeeChat 2.9]
hiroaki has quit [Ping timeout: 246 seconds]
taketasama has quit [Quit: WeeChat 2.3]
scymtym has joined #lisp
aeth has quit [Ping timeout: 246 seconds]
rwcom6028038503 has joined #lisp
rwcom602803850 has quit [Ping timeout: 240 seconds]
random-nick has quit [Ping timeout: 260 seconds]
aeth has joined #lisp
aeth has quit [Client Quit]
aeth has joined #lisp
dra has joined #lisp
msk has joined #lisp
msk has quit [Remote host closed the connection]
msk has joined #lisp
msk has quit [Max SendQ exceeded]
msk has joined #lisp
gaqwas has quit [Remote host closed the connection]
msk has quit [Max SendQ exceeded]
msk has joined #lisp
Lord_of_Life has quit [Read error: Connection reset by peer]
<Xach>
/win 3
<phoe>
you won three times
Lord_of_Life has joined #lisp
Lord_of_Life has quit [Changing host]
Lord_of_Life has joined #lisp
srhm has quit [Read error: Connection reset by peer]
akoana has left #lisp ["Leaving"]
v0|d has quit [Remote host closed the connection]
dbotton_ has joined #lisp
ech has quit [Ping timeout: 240 seconds]
dbotton has quit [Ping timeout: 260 seconds]
gravicappa has quit [Ping timeout: 256 seconds]
amb007 has quit [Read error: Connection reset by peer]
hiroaki has joined #lisp
hiroaki has quit [Remote host closed the connection]
hiroaki has joined #lisp
amb007 has joined #lisp
dbotton has joined #lisp
dbotton_ has quit [Ping timeout: 272 seconds]
ech has joined #lisp
mankaev has quit [Ping timeout: 272 seconds]
mankaev has joined #lisp
sjl_ has quit [Ping timeout: 265 seconds]
Colleen has quit [Remote host closed the connection]
Aurora_v_kosmose has quit [Remote host closed the connection]
Colleen has joined #lisp
Aurora_v_kosmose has joined #lisp
sbryant has quit [Ping timeout: 256 seconds]
kingcons has quit [Ping timeout: 256 seconds]
loli has joined #lisp
hiroaki has quit [Ping timeout: 272 seconds]
eschulte has quit [Remote host closed the connection]
astronavt has quit [Remote host closed the connection]
orivej has joined #lisp
kingcons has joined #lisp
sbryant has joined #lisp
msk has quit [Quit: Leaving]
Steeve has quit [Quit: end]
msk has joined #lisp
msk has quit [Max SendQ exceeded]
msk has joined #lisp
msk has quit [Max SendQ exceeded]
msk has joined #lisp
msk has quit [Max SendQ exceeded]
msk has joined #lisp
defaultxr has joined #lisp
loli has quit [Quit: WeeChat 2.9]
loli has joined #lisp
mathrick has quit [Ping timeout: 256 seconds]
pve has quit [Quit: leaving]
mathrick has joined #lisp
terpri_ has quit [Quit: Leaving]
terpri_ has joined #lisp
torbo has joined #lisp
terpri_ is now known as terpri
tankrim has quit [Quit: ERC (IRC client for Emacs 27.1.50)]