<_death>
personally I just use defvar (earmuffs and all) for the more complex values
varjag has quit [Ping timeout: 248 seconds]
fikka has quit [Ping timeout: 260 seconds]
xrash has joined #lisp
Bicyclidine is now known as Bike
Cymew has quit [Ping timeout: 248 seconds]
shrdlu68 has quit [Ping timeout: 260 seconds]
Cymew has joined #lisp
lnostdal has quit [Ping timeout: 255 seconds]
quazimodo has quit [Ping timeout: 260 seconds]
dieggsy has quit [Read error: Connection reset by peer]
Cymew has quit [Ping timeout: 256 seconds]
<stacksmith>
_death: premature optimization aside, constants lead to much tighter code with sbcl...
Cymew has joined #lisp
lnostdal has joined #lisp
nirved has quit [Quit: Leaving]
<Xach>
stacksmith: if you're optimizing for sbcl, defglobal might be preferable.
fikka has joined #lisp
Cymew has quit [Ping timeout: 265 seconds]
<stacksmith>
Xach: what package is defglobal?
<Xach>
stacksmith: sb-ext
orivej has quit [Ping timeout: 256 seconds]
<stacksmith>
Ah, that's kind of nice.
deng_cn has quit [Read error: Connection reset by peer]
pjb has quit [Ping timeout: 276 seconds]
fisxoj has joined #lisp
<stacksmith>
Although defconstant is portable.. Xach: why do you find it preferable?
ft has joined #lisp
fikka has quit [Ping timeout: 240 seconds]
deng_cn has joined #lisp
dieggsy has joined #lisp
<Bike>
you can set globals as much as you please, sso no redefinition complaints
<Bike>
but it (probably) lets the compiler use a known location, so it should be about as fast as a constant for things that can't be inlined into the actual code, like compound structures
<stacksmith>
thanks.
<pillton>
I'm struggling to understand this optimization. Can you give an example where that optimization is useful? Why is it different then (let ((x *var*)) ...)?
warweasle has joined #lisp
<Bike>
*var* being a global special?
<pillton>
Yeah.
<pillton>
It obviously eliminates the need to specify a lexical environment.
<Bike>
reading a special binding might be more complicated.
fikka has joined #lisp
Oladon has joined #lisp
ksool has quit [Read error: Connection reset by peer]
FreeBirdLjj has joined #lisp
fikka has quit [Ping timeout: 260 seconds]
<pierpa>
a local lexical variable is just a memory location at a fixed address. A special requires access to a symbol value slot, i.e. one indirection, one more memory access.
ebzzry has joined #lisp
markong has quit [Ping timeout: 260 seconds]
<pierpa>
(assuming the usual implementation strategies)
FreeBirdLjj has quit [Ping timeout: 260 seconds]
<pillton>
But why go to the trouble of defglobal if you can just do (let ((x *var*)) ..) ?
<Bike>
because it's not as efficient, we said
<Bike>
might also want to set the global sometimes, if not in this case
smasta has joined #lisp
<stacksmith>
pillton: sbcl encodes constants as immediates. And more complicated forms, like ash or ldb benefit as well.
<pillton>
I know, but the discussion started with constants which aren't eql.
<stacksmith>
ah, missed that.
<Bike>
also defglobal wouldn't allow anything to be immediate.
fikka has joined #lisp
<stacksmith>
Or did I? Are we really talking about constants that aren
<stacksmith>
t eql?
<Bike>
you brought it up, so we can be talking about whatever you like
<stacksmith>
I know, but I was corrected by pilton... :)
<stacksmith>
Looking at sbcl's defconstant... That's a whole lot of code!
deng_cn has quit [Read error: Connection reset by peer]
<Bike>
eh, it's mostly comments and errors
<stacksmith>
true
<Bike>
it boils down to setting the symbol-value and setting the info db entry for the variable to :constant
fikka has quit [Ping timeout: 248 seconds]
deng_cn has joined #lisp
SuperJen has joined #lisp
orivej has joined #lisp
<stacksmith>
I've never looked at the info stuff... Looks kind of interesting...
<Bike>
as far as i know it's a schmancy global hash table, or table of tables
randomstrangerb has quit [Ping timeout: 248 seconds]
<iqubic>
What does "?\:" mean? Or "?\C-w"?
<iqubic>
In lisp I mean.
<Bike>
that's elisp syntax for characters.
<iqubic>
Oh, I thought it was a general lisp thing.
JenElizabeth has quit [Ping timeout: 256 seconds]
<iqubic>
I'm not sure if this is the right place to ask my question then.
<iqubic>
Is there a version of that syntax for the elisp char ESC?
fikka has joined #lisp
<Bike>
i think #emacs would be the place to ask.
fikka has quit [Ping timeout: 256 seconds]
<porky11>
hi
<porky11>
I'm working on a language in lisp, which is possible to use without brackets and is intended to be used as programming lanugage or language for speaking/writing
rumbler31 has joined #lisp
<porky11>
the parser of the fundamental grammar into sexpressions and functions/macros to simplify the declaration of how to expand everything, already is defined https://gitlab.com/porky11/setlang
rumbler31 has quit [Read error: Connection reset by peer]
fikka has joined #lisp
<porky11>
the language was intendet to be based on set theory, but I'm not sure, if that's a good approach even for programming language
ckonstanski has quit [Remote host closed the connection]
rumbler31 has joined #lisp
<porky11>
maybe soneone is interested
<Zhivago>
The only interesting question here is -- how do you delimit variadic invocations?
<porky11>
Zhivago: that is probably the most important aspect of the garmmar,
fikka has quit [Ping timeout: 256 seconds]
<porky11>
there are words, that represend functions, which implicitely open parentheses, and words, that represent objects/sets, which implicitely close parentheses,
<White_Flame>
(+ 1 1) becomes PLUS BEGIN ONE ONE END?
<porky11>
White_Flame, you wouldn't need the END probably, but something like begin yes
<White_Flame>
so like PLUS START-MY-LIST ONE ONE-WHICH-IS-LAST
<White_Flame>
code without documentation doesn't get your design across
<porky11>
that's just a working example, documentation is somewhere different, but most of it are just unfinished drafts
<White_Flame>
I don't know what the example's intent is
<White_Flame>
I don't know where to expect its boundaries of parameter lists to be indicated
<White_Flame>
it's literally a foreign language
<porky11>
for examle to sum multiple objects, you would write, when having the identity function `id` `sum id 1 id 2 3
<porky11>
and the 3 implicitely closes parentheses again
<White_Flame>
would that be (+ 1 2 3), or (+ 1 (+ 2 3)) or what? impossible to know just from the output example
fikka has joined #lisp
<porky11>
that would be (+ 1 2 3)
<White_Flame>
I mean, YOU know all about how it works, but nobody else does ;)
<porky11>
or with parentheses (+ (id 1) (id 2) 3)
<White_Flame>
so yeah, link it directly to something we do know, like that
<porky11>
for math this concept is not perfect, but for natural language things, this seems useful in many cases
<White_Flame>
it's basically a reversal of "add 1 and two and three."
<porky11>
yes
<White_Flame>
prefix instead of infix to indicate something more is coming along as well
<porky11>
but there is also some limited support of infix
<White_Flame>
so as far as I'm concerned, it's still semantically equivalent
deng_cn has quit [Read error: Connection reset by peer]
<White_Flame>
I do like end delimiters, because there's only 1 to deal with, instead of per-element delimiters, like commas in most other languages' lists
<porky11>
didn't think yet, if it is useful for math
fikka has quit [Ping timeout: 256 seconds]
<stacksmith>
porky11: not to bee an asshole, but why?
<porky11>
example for something similar to `do from a to b go` => (do (from a) (to b) go)
deng_cn has joined #lisp
<porky11>
stacksmith: the main idea was to create a simple speakable langauge
<porky11>
but now I'm experimenting, if it is usable as programming language, too
<porky11>
White_Flame: What do you mean by end delimiters? Just closing brackets?
<stacksmith>
Forth is pretty usable, although it becomes convoluted. by optimizing away braces, you lose clarity.
<White_Flame>
yes, (1 2 3 4 5) vs "1, 2, 3, 4, 5" or "1 and 2 and 3 and 4 and 5" where the latter 2 delimit the list on every element
<stacksmith>
You could say 'open' and 'close' or 'start' 'end' and keep Lisp.
<White_Flame>
yep, "plus with 1 2 3 4 5 done"
<White_Flame>
vs "foo 1" where it's non-variadic
fikka has joined #lisp
<stacksmith>
White_Flame: isn't it cleaner as 'start 1 2 3 4 5 end'?
<White_Flame>
depends on what's "natural language" for you
fisxoj has quit [Remote host closed the connection]
<porky11>
it's even already possible to define something like that
<White_Flame>
my example was giving a function name, and then saying that we're going to be using it with a list of parameters
<White_Flame>
as opposed to "plus id 1 id 2 id 3 id 4 5"
<porky11>
by natural language I mean a language, which can be used to speak or write texts
<White_Flame>
right, does "function with blah blah blah done" sound more natural to you than "function start blah blah blah end"
<White_Flame>
that's just human-level feelies, not actual language semantics
fikka has quit [Ping timeout: 276 seconds]
<White_Flame>
but in any case, all programming languages are about tracking very specific operations & data paths. Natural language is all about communicating within assumption & implied context, so they're never going to mesh well
<porky11>
also keyword arguments work like functions
<porky11>
would also be nice, if it's just usable as a language for a game, where you can tell computer players what to do
DeadTrickster has quit [Ping timeout: 256 seconds]
<White_Flame>
I think there's many lessons to be learned from SQL and COBOL, both of which were intended to be "like natural english"
<White_Flame>
and both of which ended up still being specific, fiddly, engineering tasks to write, just like any programming language
<Zhivago>
I'm not sure about never -- natural language presumes a dialogue between intelligent agents.
<porky11>
they are pretty stupid languages, expecially SQL just seems like a complicated version of the underlying logic
pagnol has quit [Quit: Ex-Chat]
<Zhivago>
As we move toward negotiating with intelligent agents rather than specifying dumb machines, natural language will probably come to dominate programming.
<White_Flame>
Zhivago: right, if we get machine agents to understand English, then we won't have a mesh of programming language & natural language. We'll just have natural language :)
fikka has joined #lisp
* White_Flame
picks up his mouse: "Computer?"
DeadTrickster has joined #lisp
fikka has quit [Ping timeout: 256 seconds]
<porky11>
Just uploaded the small README to the repo
fisxoj has joined #lisp
fikka has joined #lisp
Arcaelyx has joined #lisp
fisxoj has quit [Client Quit]
deng_cn has quit [Read error: Connection reset by peer]
<welle>
Hi, newbie to Lisp here. There are some instructions for running nEXT Browser in Linux, and they work when I run them one after another in a SBCL repl. When I put them in a progn statement and try to compile them to a binary with save-lisp-and-die, it returns a thread error. Help?
fikka has quit [Ping timeout: 248 seconds]
Cymew has quit [Ping timeout: 248 seconds]
pierpa has quit [Quit: Page closed]
EvW has quit [Ping timeout: 260 seconds]
<Bike>
you shouldn't save-lisp-and-die from slime, it doesn't work well if multiple threads are running
DeadTrickster_ has joined #lisp
deng_cn has joined #lisp
DeadTrickster has quit [Read error: Connection reset by peer]
DeadTrickster__ has joined #lisp
<welle>
How should I go about compiling an executable from a list of sequential commands?
<welle>
At the moment, I'm using the SBCL repl in bash
grublet has quit [Quit: Leaving]
<Bike>
that's not the usual mode of interacting with lisp. does nEXT not have build instructions?
arescorpio has joined #lisp
DeadTrickster_ has quit [Ping timeout: 240 seconds]
DeadTrickster_ has joined #lisp
<welle>
No, it currently has to be built from source on Linux. I want to use it for browsing so I learn Emacs-style keybinds.
quazimodo has joined #lisp
fisxoj has joined #lisp
DeadTrickster__ has quit [Ping timeout: 248 seconds]
<White_Flame>
save-lisp-and-die should be given the instructions to start up the system post-restore
bigos has quit [Remote host closed the connection]
deng_cn has quit [Ping timeout: 240 seconds]
<Bike>
hum. jmercourius is around here sometimes, they could probably help more specifically
<White_Flame>
you shouldn't try to save a running system wiht threads, open files/sockets/etc, because that's not meaningful to capture
<Bike>
i think the usual practice with save lisp and die is to write a script system that gets the system into the state you want it to start up in.
schoppenhauer has quit [Ping timeout: 265 seconds]
smasta has quit [Ping timeout: 260 seconds]
schoppenhauer has joined #lisp
fikka has joined #lisp
fikka has quit [Ping timeout: 260 seconds]
asarch has joined #lisp
fikka has joined #lisp
varjag has joined #lisp
fikka has quit [Ping timeout: 260 seconds]
deng_cn has quit [Read error: Connection reset by peer]
Bike has quit [Quit: Lost terminal]
deng_cn has joined #lisp
varjag has quit [Ping timeout: 248 seconds]
fikka has joined #lisp
arescorpio has quit [Excess Flood]
Jk has joined #lisp
Jk is now known as Guest84451
fikka has quit [Ping timeout: 240 seconds]
BitPuffin has joined #lisp
Guest84451 has quit [Ping timeout: 260 seconds]
fikka has joined #lisp
rumbler31 has quit [Remote host closed the connection]
python476 has joined #lisp
asarch has quit [Quit: Leaving]
fikka has quit [Ping timeout: 256 seconds]
<krwq>
How do you create an int and get pointer to it with cffi? I've tried this: (cffi:with-foreign-object (user-data :int) (setf user-data 123) (cffi:mem-aptr user-data :int 0)) but it gives me a value and not a pointer to that value
fikka has joined #lisp
orivej has quit [Ping timeout: 256 seconds]
<pillton>
user-data is the pointer.
fikka has quit [Ping timeout: 260 seconds]
<pillton>
You want (setf (cffi:mem-ref user-data 0) 123).
deng_cn has quit [Read error: Connection reset by peer]
deng_cn has joined #lisp
mishoo_ has joined #lisp
xantoz has quit [Ping timeout: 263 seconds]
milanj has joined #lisp
schweers has joined #lisp
scymtym has joined #lisp
xantoz has joined #lisp
nirved has joined #lisp
rabbit has joined #lisp
fluke` has quit [Remote host closed the connection]
razzy has quit [Remote host closed the connection]
Mandus has quit [Ping timeout: 256 seconds]
fikka has joined #lisp
fikka has quit [Ping timeout: 264 seconds]
razzy has joined #lisp
damke_ has joined #lisp
solyd has joined #lisp
fluke` has joined #lisp
damke has quit [Ping timeout: 264 seconds]
hhdave has joined #lisp
jfb4 has quit [Ping timeout: 240 seconds]
fikka has joined #lisp
rstandy has joined #lisp
jfb4 has joined #lisp
hhdave has quit [Ping timeout: 256 seconds]
vydd has joined #lisp
vydd has quit [Remote host closed the connection]
hhdave has joined #lisp
vydd has joined #lisp
vydd has quit [Read error: Connection reset by peer]
froggey has quit [Ping timeout: 268 seconds]
varjagg has joined #lisp
Tobbi has joined #lisp
smokeink has quit [Remote host closed the connection]
smokeink has joined #lisp
varjagg has quit [Ping timeout: 256 seconds]
fikka has quit [Ping timeout: 276 seconds]
klixto has joined #lisp
jfb4 has quit [Ping timeout: 268 seconds]
razzy has quit [Quit: ERC (IRC client for Emacs 25.2.1)]
jfb4 has joined #lisp
razzy has joined #lisp
jfb4 has quit [Ping timeout: 248 seconds]
jfb4 has joined #lisp
nosaj88 has quit [Quit: Leaving]
jfb4 has quit [Ping timeout: 264 seconds]
shrdlu68 has quit [Ping timeout: 268 seconds]
jfb4 has joined #lisp
shrdlu68 has joined #lisp
<AeroNotix>
seems like there's a lot of interesting scroll back
<AeroNotix>
Will try to read it all
<Shinmera>
iqubic: Learning ASM is worth it, though there's not just one assembly, and they can differ significantly in details.
<Shinmera>
iqubic: I'd recommend learning a very simple RISC-like first, and then learning x86. The former because it'll be easier to get started with and get an idea of what it's about, and the latter because it's actively useful.
<AeroNotix>
iqubic: a very simple "assembly" to learn would be chip8
<AeroNotix>
jmercouris: what are you trying to solve? Plugins, perchance?
<jmercouris>
then of course theoretically, assuming I exported properly, they will be able to (ql:quickload "xyz-package-from-next-trusted-repository")
<AeroNotix>
yeah it is, I love the size difference. It really does embody the different attitudes between English and American people
<Shinmera>
>> #lispcafe
<AeroNotix>
haha
<AeroNotix>
sorry
jmercouris has quit [Ping timeout: 248 seconds]
Kevslinger has joined #lisp
dddddd has joined #lisp
<AeroNotix>
guess he wasn't that interested any way :)
<AeroNotix>
wow I'm quite surprised that lispkit still builds with no issues. Guess the work in QL and my effort to automate it paid off!
fluke` has quit [Ping timeout: 260 seconds]
fluke` has joined #lisp
fluke` has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
jfb4 has quit [Ping timeout: 248 seconds]
jfb4 has joined #lisp
EvW has joined #lisp
nowhereman_ has joined #lisp
pagnol has joined #lisp
<AeroNotix>
I do really like how with QL you depend on a distribution of systems rather than say a specific version of a system. It's like there's one version your application is pinned to, the whole dependency tree (all systems within QL)
porky11 has quit [Quit: Leaving]
nowhere_man has quit [Ping timeout: 260 seconds]
fikka has quit [Ping timeout: 260 seconds]
fikka has joined #lisp
Bike has joined #lisp
jason_m has joined #lisp
Josh_2 has joined #lisp
jfb4 has quit [Ping timeout: 276 seconds]
fikka has quit [Ping timeout: 260 seconds]
jfb4 has joined #lisp
jason_m has quit [Ping timeout: 260 seconds]
smokeink has quit [Remote host closed the connection]
rumbler31 has joined #lisp
jameser has joined #lisp
Devon has joined #lisp
Devon has quit [Ping timeout: 240 seconds]
kami has joined #lisp
<kami>
Hello #lisp
<beach>
Hello kami.
AlphaAtom has joined #lisp
AlphaAtom has quit [Client Quit]
warweasle has joined #lisp
AlphaAtom has joined #lisp
Josh_2 has quit [Remote host closed the connection]
tazjin has quit []
tazjin has joined #lisp
Denommus has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
jameser has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ebzzry has quit [Read error: Connection reset by peer]
Cymew has quit [Remote host closed the connection]
<jmercouris>
anyone in here interested in working on some lisp projects together or some startup?
ebzzry has quit [Ping timeout: 268 seconds]
Cymew has joined #lisp
<beach>
I am always interested in working with others on Common Lisp projects, but I work exclusively on free software. Also, it depends on the domain, of course.
adulteratedjedi has quit []
dieggsy has joined #lisp
adulteratedjedi has joined #lisp
<shrdlu68>
jmercouris: I, for one.
<Shinmera>
I am, if the projects are mine :^)
<pjb>
jmercouris: how well is it paid?
FreeBirdLjj has quit [Remote host closed the connection]
jstypo has quit [Remote host closed the connection]
froggey has joined #lisp
<jmercouris>
pjb: not paid :\
<jmercouris>
beach: It is free software I'm interested in developing
<jmercouris>
shrdlu68: what kinds of things are you interested in?
<dlowe>
you're going to have to be more persuasive than that ;)
<jmercouris>
Shinmera: what if it *uses* one of your projects?
<Shinmera>
That'd be cool, but I don't have time to start another thing.
<Shinmera>
I'd just cheer you on and provide support in that case.
<jmercouris>
Cheerleader is definitely a useful job
<phoe>
What is the simplest way of getting millisecond-precision time in Lisp?
<Shinmera>
phoe: Hope internal-time-units-per-second is high enough on your implementation?
<phoe>
Shinmera: 1000.
<phoe>
Or more.
<jmercouris>
dlowe: alright, how do I persuade yoU?
<phoe>
So it is millisecond enough.
<shrdlu68>
jmercouris: Data encoding, compression, protocols, GOFAI, to name a few.
Arcaelyx has joined #lisp
<jmercouris>
shrdlu68: GOFAI?
<jmercouris>
ah, just looked it up
<Shinmera>
phoe: If you need higher precision, posix gettimeofday can also help.
<jmercouris>
okay, so this project is inline
<phoe>
Shinmera: I don't.
<jmercouris>
give me a few minutes to think of a good pitch
<dlowe>
jmercouris: offering me something that will convince me to do your thing instead of my thing
<dlowe>
because everyone here has their own thing they could be doing
<jmercouris>
dlowe: this is something that can make money
* shrdlu68
should be submitting something to contest the Hutter Prize soon.
<phoe>
I need a snippet that will give me internal real time in milliseconds regardless of the internal-time-units-per-second value.
<phoe>
Hmm.
<dlowe>
phoe: also, are you talking about measuring durations here or getting the time of day?
<phoe>
Durations.
<phoe>
I'll use LOCAL-TIME.
<_death>
phoe: may want to check my monotonic-time system
<jmercouris>
alright, so in a nutshell, here is the project for your consideration: a special server to share bookmarks, active tabs, favorites, stuff like that (within an organization). it'll use "machine learning" to offer smart suggestions to users
<dlowe>
phoe: Why not just do (/ (* (- b a) 1000) internal-time-units-per-second)
<dlowe>
where b and a are from (get-internal-real-time)
<phoe>
dlowe: oh. Hmm.
<dlowe>
seems a bit easier than pulling in all of local-time :p
<jmercouris>
so each client will have a local database of all the other users in the organization, and it'll serve on some localhost
<jmercouris>
then the user can query their local server, does that make sense?
<phoe>
(/ (* (- b a) 1000)
<phoe>
internal-time-units-per-second)
<phoe>
gah, sorry
<jmercouris>
it's hard to focus while I'm on the phone at the same time
EvW has quit [Ping timeout: 260 seconds]
<jmercouris>
beach: are any of your projects monetizable? can you turn any of them into a full time job?
<beach>
jmercouris: I haven't given it any thought, because I am not interested in making money out of my projects.
dec0n has quit [Write error: Connection reset by peer]
<jackdaniel>
"I have a problem with my project. What should I do? I know, I'll monetize it." - now developer had two problems
<phoe>
^
fikka has joined #lisp
kami has quit [Ping timeout: 256 seconds]
<jmercouris>
jackdaniel: You misunderstand
<jmercouris>
I wish to simply work on lisp full time
<jmercouris>
and an unfortunate reality of this world is that I must also eat
emacsoma` has joined #lisp
emacsomancer has quit [Ping timeout: 260 seconds]
<pjb>
jmercouris: we've already paid for beach's work.
<pjb>
jmercouris: eg. sicl costs me 0.002 €/year.
<beach>
pjb: You have, but not jmercouris.
<phoe>
jmercouris: find something people want, make it, offer it to them for money.
<pjb>
sure. jmercouris pays for some other projects, and we share, thanks to the internet :-)
<beach>
Probably so.
<phoe>
people don't pay you to code in something you want, people pay you to get something they want.
<pjb>
beach: that's assuming jmercouris is not USA taxpayer, because for USA projects, WE do pay too, in all kinds of charges…
<shrdlu68>
phoe: Those things are not necessarily mutually exclusive.
<pjb>
jmercouris: promote the universal inconditional revenue!
<phoe>
shrdlu68: that is correct
<jackdaniel>
I'm not against getting paid for work on something one likes. I'm just saying that "menetizing" things is a tedious task and if handled sloppily is a bad thing (embedded ads in software, shareware, you name it)
<phoe>
but they don't always go together either.
<jackdaniel>
likes to do*
<jackdaniel>
monetizing*
<jackdaniel>
huh, speaking of sloppy (writing)
fikka has quit [Ping timeout: 252 seconds]
<beach>
jmercouris: Here is a trick that I practiced in the past. I had a job for a company where they didn't care much which language was used to get the job done. So I used Lisp (not Common Lisp though) as much as I could.
varjag has quit [Quit: ERC (IRC client for Emacs 24.5.1)]
<pjb>
and even when they want a specific language, you can often use CL to write tools and generate the code for you.
pmetzger has joined #lisp
pagnol has quit [Ping timeout: 260 seconds]
<jmercouris>
beach: That's a good strategy, but I also want to have my own business
<jmercouris>
however more difficult that may be
<jmercouris>
Also, I pay some european and american taxes, depending on the thing
<pjb>
Having a business is easy: you just need to find customers.
<jmercouris>
Lol, yeah
<shrdlu68>
Finding customers is easy, you just need to...
<dlowe>
??? 3) Profit!
<jmercouris>
I do have a strategy to find customers, I'm good at marketing, I just need to work on a product
<jmercouris>
the product I have in mind is one that can be sold, and is interesting
<jmercouris>
I was just wondering if anyone is interested in working together is all
<phoe>
jmercouris: hey
<phoe>
these are two different things
<pjb>
Sorry, I forgot an important word: Having a business is easy: you just need to find PAYING customers.
<phoe>
working together, and businessmaking together
<jmercouris>
working together on a business, how about that
<jmercouris>
working together on a business that involves software written in CL
<jmercouris>
pjb: before you do anything, you at least need a team
<jmercouris>
you can pivot and market as many times as necessary, but you need a team
<pjb>
Not in this market. If you find the paying customer, you can hire the team quickly.
Arcaelyx has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
surya has joined #lisp
<pjb>
And this can be done progressively. Once you have 4-5 people working for you that will make enough income so you can hire a salesman to do the job of finding paying customer for you too. Then it's automatic.
<Shinmera>
jmercouris: There's already a ton of bookmark services out there.
<shrdlu68>
I must admit that that sounds rather attractive. I don't understand the business though.
pmetzger has quit []
<jmercouris>
Shinmera: well, I'm open to any other ideas, or how to switch it up
<pjb>
and yes, whatever the idea, there's already a ton of solutions out there. This is why the important thing is the paying customer. Once you have the money, you can hire the technicians to implement the customer's solution.
drewc has quit [Ping timeout: 268 seconds]
<jmercouris>
or even just to brainstorm ideas
<pjb>
jmercouris: you don't need an idea. You need a paying customer. Then you do whatever he needs.
<jmercouris>
pjb: I'm not looking for a patron :D
<pjb>
Well, at first, it's difficult because you have a small number of paying customer, but when you have more, you can start to fuck them, like Microsoft or Apple…
<jmercouris>
Yes, you need an idea first, then you identify potential customers, then you iterate, then you sell
<pjb>
They've got half the planet has customers, so they can do whatever they want.
<jmercouris>
Let's not muddy the waters, this is not relevant to starting a business
<pjb>
jmercouris: you got it wrong. first paying customer, then idea for a solution, then you implement. Selling is done first: you don't start working without having the money in the bank).
Cymew has quit [Remote host closed the connection]
<pjb>
or you could start by the venture capital, but then they become your boss.
<shrdlu68>
pjb: That only describes a certain subset of businesses. Like architecture, where you have to wait to get a paying client.
<jmercouris>
No, the order is: 1. Product, 2. - Customer 3. - Iterate Until 4. - 4. Conversion to Paying Customer
<jackdaniel>
I think we are drifting from Lisp topic more with each second
<jmercouris>
yes, true, so, finally, last statement, anyone who is legitimately interested in working on some sort of business or something, please pm me
surya has quit [Ping timeout: 240 seconds]
<Josh_2>
I can change the dates in your code so that you are not effected by y2k?
Bike has quit [Ping timeout: 260 seconds]
fikka has joined #lisp
Cymew has joined #lisp
hiroaki has quit [Ping timeout: 248 seconds]
Cymew has quit [Ping timeout: 240 seconds]
Cymew has joined #lisp
Cymew has quit [Ping timeout: 260 seconds]
FreeBirdLjj has joined #lisp
Cymew has joined #lisp
JenElizabeth has joined #lisp
solyd has quit [Quit: solyd]
FreeBirdLjj has quit [Ping timeout: 248 seconds]
Cymew has quit [Ping timeout: 240 seconds]
SuperJen has joined #lisp
drewc has joined #lisp
Cymew has joined #lisp
JenElizabeth has quit [Remote host closed the connection]
LiamH has joined #lisp
SuperJen has quit [Remote host closed the connection]
EvW has joined #lisp
Cymew has quit [Ping timeout: 240 seconds]
Cymew has joined #lisp
Bike has joined #lisp
Cymew has quit [Ping timeout: 265 seconds]
Cymew has joined #lisp
Cymew has quit [Ping timeout: 240 seconds]
Karl_Dscc has joined #lisp
Cymew has joined #lisp
FreeBirdLjj has joined #lisp
schweers has quit [Remote host closed the connection]
Cymew has quit [Ping timeout: 248 seconds]
FreeBirdLjj has quit [Ping timeout: 240 seconds]
Cymew has joined #lisp
varjag has joined #lisp
surya has joined #lisp
Josh_2 has quit [Remote host closed the connection]
<jmercouris>
Shinmera: I looked through your software, and the only really monetizable thing I could see was Radiance or Flow
<jmercouris>
at least, with obvious paths
<borodust>
jmercouris: yes, indeed i am, but i see Shinmera already answered all your questions :)
<jmercouris>
yep! thanks anyway though
m00natic has quit [Remote host closed the connection]
<borodust>
no probs! ;p
xrash has quit [Ping timeout: 260 seconds]
<Shinmera>
jmercouris: Okey, though again, I don't really care
surya has quit [Ping timeout: 256 seconds]
<jmercouris>
well, at least now you know? *shrugs* :D
raynold has joined #lisp
hhdave has quit [Ping timeout: 256 seconds]
orivej has quit [Ping timeout: 240 seconds]
nosaj88 has joined #lisp
dieggsy has quit [Quit: ERC (IRC client for Emacs 27.0.50)]
nosaj88 has quit [Client Quit]
nowhere_man has joined #lisp
nowhereman_ has quit [Ping timeout: 276 seconds]
pmetzger has joined #lisp
orivej has joined #lisp
guicho has joined #lisp
guicho has quit [Client Quit]
guicho has joined #lisp
madrik has quit [Remote host closed the connection]
ebrasca has left #lisp ["ERC (IRC client for Emacs 25.2.1)"]
<mfiano>
How would I query the pprint dispatch table to see if there is already an entry present, so that I can supply the proper priority argument with a call to SET-PPRINT-DISPATCH?
<Bike>
i don't think you can get at it
<Shinmera>
With implementation internal means.
<Bike>
pprint-dispatch just gives you the highest priority object
<Shinmera>
What you can do is remove any matching dispatcher
<mfiano>
I just discovered that since mathkit is being pulled into my image, it is causing matrices to be pretty-printed *with the wrong transposition*.
<Shinmera>
by setting the function to NIL
<mfiano>
since they are just simple-array single-float 16's
<mfiano>
How would I remove an entry?
<Shinmera>
19:41:14 Shinmera | by setting the function to NIL
<mfiano>
That is what I am questioning how to do
smasta has joined #lisp
<Shinmera>
set-pprint-dispatch with the function argument NIL
<Shinmera>
as it says in the clhs
shka has joined #lisp
solyd has joined #lisp
<mfiano>
Thanks
guicho has quit [Quit: ERC (IRC client for Emacs 25.1.1)]
guicho has joined #lisp
<mfiano>
That's not possible. I would need to know all the type aliases defined. Can't simply set '(simple-array single-float (16)) function to nil
<Shinmera>
Well you would similarly have to test for all type aliases to do your priority thingy, yeah?
Kaisyu has quit [Quit: Connection closed for inactivity]
<mfiano>
I'm currently just choosing an arbitrary high integer, which works, but could always fail if someone were to do the same and that was pulled into user images transitively by quicklisp
<Shinmera>
Modifying the global pprint table is ugly anyway.
<mfiano>
Exactly but a few matrix libraries do so and conflict with my game's representation
<mfiano>
and dependencies pull them in even though they are un-used, so it messes up my image
EvW has quit [Remote host closed the connection]
EvW has joined #lisp
<Shinmera>
PR the libs to stop them from doing that?
nowhereman_ has joined #lisp
nowhere_man has quit [Ping timeout: 256 seconds]
fikka has quit [Ping timeout: 260 seconds]
nowhere_man has joined #lisp
orivej has quit [Ping timeout: 260 seconds]
nowhereman_ has quit [Ping timeout: 260 seconds]
Pixel_Outlaw has joined #lisp
smasta has quit [Ping timeout: 268 seconds]
<shka>
good evening
<jmercouris>
beach: Who is currently working on the OSX port of Mcclim?
<jmercouris>
just fiddlerwoaroof ?
<jmercouris>
fiddlerwoaroof: are you there?
d4ryus2 is now known as d4ryus
pagnol has joined #lisp
<beach>
jmercouris: I am afraid I don't remember. But I am sure jackdaniel knows.
<jmercouris>
so you'd like to just replace all backends with an SDL one? or just the one for OSX?
<jackdaniel>
but truth to be told we have some code for beagle backend (cocoa-based) and no code for sdl
BitPuffin has quit [Remote host closed the connection]
<jmercouris>
brb, going to store
<jackdaniel>
why replace? I want to have a portable backend which will work on all major platforms. currently only one backend works (and it is CLX in two flavours)
<jmercouris>
well, SDL is a portable back end which works on all major platforms
<jackdaniel>
I'm also writing (mostly for fun and documentation purposes) ncurses backend, but that should be taken more as a curiousity than a work which would benefit programmers society ;-)
<jmercouris>
so why support others when SDL will do the trick just fine?
<jackdaniel>
that's why I said I'd gladly see such addition
<jmercouris>
that's basically my question
<jmercouris>
Oh okay
Sauvin has quit [Ping timeout: 240 seconds]
<phoe>
jmercouris: because it works right npow
<jmercouris>
So theoretically anyone could make the SDL backend
<phoe>
as compared to SDL backend
<jmercouris>
since it isn't OSX specific
<jmercouris>
what is the rationale for CLX? is that legacy code?
<phoe>
which not only doesn't work, but also doesn't exist
<jmercouris>
aka did the original author mcclim implement CLX, and therefore that's what we're working with?
<jmercouris>
right, I'm asking why wasn't SDL chosen in the first place
<jackdaniel>
CLX is the only working backend. Also CLX is portable across unices
<jmercouris>
I understand this whole hindsight 20/20 thing
<jmercouris>
perhaps it didn't exist at the time, etc
<jmercouris>
If SDL existed, Is there a good reason for CLX and SDL to coexist?
<jackdaniel>
also I would be displeased if everybody would start aiming at writing 10 backends at the same time
<jmercouris>
maybe my question isn't very clear :\
<jackdaniel>
there are so many parts of codebase which would benefit from developer work
<jackdaniel>
yes, there is a huge reason - clx is pure CL software, so you can fully start it from (say) QL
<jackdaniel>
SDL backend would be a bunch of cffi bindings depending on libraries installed on a system
<jmercouris>
I also have to go, german grocry stores arent open late lol
Rawriful has joined #lisp
fourier has joined #lisp
smasta has quit [Ping timeout: 268 seconds]
fikka has quit [Ping timeout: 240 seconds]
fourier has quit [Changing host]
fourier has joined #lisp
fikka has joined #lisp
antgreen has joined #lisp
random-nick has quit [Read error: Connection reset by peer]
fikka has quit [Ping timeout: 240 seconds]
JenElizabeth has joined #lisp
alexmlw has joined #lisp
sjl has joined #lisp
JenElizabeth has quit [Remote host closed the connection]
fikka has joined #lisp
fourier has quit [Ping timeout: 240 seconds]
joeygibson has quit [Quit: Connection closed for inactivity]
damke_ has joined #lisp
fikka has quit [Ping timeout: 248 seconds]
damke has quit [Ping timeout: 264 seconds]
attila_lendvai has quit [Read error: Connection reset by peer]
White_Flame has quit [Remote host closed the connection]
White_Flame has joined #lisp
orivej has joined #lisp
fikka has joined #lisp
eudoxia has joined #lisp
attila_lendvai has joined #lisp
random-nick has joined #lisp
kolko has joined #lisp
solyd has quit [Quit: solyd]
easieste has joined #lisp
<aeth>
SDL is a large, heavyweight C library.
easieste has quit [Client Quit]
<aeth>
The ideal approach would probably be directly write to Linux, Windows, and macOS APIs (through some written-in-CL portability layer, of course) so no third party library is required (afaik).
<aeth>
That probably hasn't been done because that's a lot of work.
eudoxia_ has joined #lisp
eudoxia_ has quit [Client Quit]
eudoxia has quit [Ping timeout: 256 seconds]
Murii has quit [Quit: WeeChat 1.4]
scymtym has quit [Ping timeout: 260 seconds]
LiamH has quit [Quit: Leaving.]
fikka has quit [Ping timeout: 240 seconds]
shka has quit [Ping timeout: 240 seconds]
Karl_Dscc has quit [Remote host closed the connection]
fourier has joined #lisp
fourier has quit [Changing host]
fourier has joined #lisp
antgreen has quit [Ping timeout: 265 seconds]
Methos_ is now known as GGMethos
warweasle has quit [Quit: rcirc on GNU Emacs 24.4.1]
<k-hos>
they have been hitting a lot of channels lately
<jmercouris>
can you repeat, what is happening?
<k-hos>
spam bot
<pagnol>
spam bot
<k-hos>
pay attention
<zacts>
ugh...
<jmercouris>
Shinmera: Have you made a static site generator?
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
<Shinmera>
It's called with-open-file :^)
<jmercouris>
So, no?
<Shinmera>
I don't know what you mean that to be, so I can't answer your question.
<jmercouris>
You know, like Pelican, Hugo, etc
<Shinmera>
I don't know
<jmercouris>
takes some markup, some index, and makes a website
<p_l>
Damn, too slow
<k-hos>
static sites from a template
<jmercouris>
Well, now you know the definition
<Shinmera>
Well, my blog site allows you to make posts in markdown and produces cached pages.
<Shinmera>
Does that count?
<jmercouris>
Kind of
<jmercouris>
usually they are more featured than that
<whoman>
aeth, so making a kind of simple and direct media layer in pure CL ? ^_^
<jmercouris>
"simple", "direct"
<dlowe>
I made one for myself a long time ago. It was pretty neat - it would "expand" custom html tags, so I could write my site in html and then compile it to look fancy
emaczen has quit [Quit: ERC (IRC client for Emacs 24.5.1)]
<Shinmera>
dlowe: That's what my template system Clip does.
<k-hos>
maybe aeth should make a simple fast multimedia layer instead
<whoman>
surely aeth will make sure its fast =
<jmercouris>
I mean, how hard could it be
Ven`` has joined #lisp
<jmercouris>
we all agree that it is "simple"
<dlowe>
nowadays, I'd just use stencl :)
<Shinmera>
Even just doing sound portably is hard enough.
<Shinmera>
But I did it, so that's not a concern anymore
<k-hos>
I am not looking forward to using the cl bindings of portaudio
<jmercouris>
Something something batman quote hero CL community deserves
fourier has quit [Ping timeout: 240 seconds]
<Shinmera>
jmercouris: There's other systems (like Staple) that do similar things but tailored towards specific concerns. I have not written anything that is very general, because that's just a matter of doing some HTML wrangling and writing to file, which can be done in like a single line with lQuery.
fikka has quit [Ping timeout: 240 seconds]
<jmercouris>
Interesting, much different approach than me
<jmercouris>
man that sounds like caveman english
<jmercouris>
I don't even know how to correct it, but you get my meaning
fikka has joined #lisp
<whoman>
very
<jmercouris>
I'm using a templating language, that's based on (sexpr) e.g. (:body (:h1 "Some text")) and then there are vars you can set, these vars can be interpreted strings through pandoc
<jmercouris>
together these make the actual pages
scymtym has joined #lisp
<jmercouris>
whoman: I think maybe "Interesting, a very different approach compared to mine" or something like that
asarch has joined #lisp
Ven`` has quit [Ping timeout: 256 seconds]
nosaj88 has joined #lisp
nosaj88 has quit [Remote host closed the connection]
White_Flame has quit [Remote host closed the connection]
White_Flame has joined #lisp
zooey has quit [Remote host closed the connection]
zooey has joined #lisp
earl-ducaine has quit [Remote host closed the connection]
earl-ducaine has joined #lisp
smasta has joined #lisp
k-hos has quit [Quit: brb spaghetti]
vydd has joined #lisp
k-hos has joined #lisp
al-damiri has joined #lisp
fikka has quit [Ping timeout: 268 seconds]
epony has joined #lisp
vydd has quit [Quit: vydd]
fikka has joined #lisp
Bike has quit [Ping timeout: 260 seconds]
rumbler31 has quit [Ping timeout: 240 seconds]
Karl_Dscc has joined #lisp
quazimodo has joined #lisp
milanj has quit [Quit: This computer has gone to sleep]
milanj has joined #lisp
sjl has quit [Ping timeout: 248 seconds]
mlf has joined #lisp
Karl_Dscc has quit [Remote host closed the connection]
<jasom>
anybody know what abcl does during initialization? It takes 8 hours to run on Doppio...
damke has joined #lisp
random-nick has quit [Remote host closed the connection]
varjag has quit [Quit: ERC (IRC client for Emacs 25.2.1)]
damke_ has quit [Ping timeout: 264 seconds]
tylerdmace has quit [Ping timeout: 248 seconds]
tylerdmace has joined #lisp
<phoe>
jasom: are you sure you are running it on a JVM that has a compiler, not just an interpreter?
<jasom>
phoe: I know nothing about the implementation of the JVM I'm running it on, except it's several orders of magnitude slower than what I'm used to.
z3t0 has joined #lisp
<phoe>
jasom: that is likely to be the culprit.
<jasom>
the paper claims 24x-48x slower for compute bounded tasks, and simple benchmarks prove that, but I'm seeing much bigger slowdowns for abcl.
<phoe>
check the JVM.
* phoe
off to sleep
<jasom>
kawa has near instant startup
openthesky has joined #lisp
openthesky has quit [Client Quit]
sjl has joined #lisp
billitch has quit [Ping timeout: 260 seconds]
milanj has quit [Quit: This computer has gone to sleep]
billitch has joined #lisp
moei has quit [Quit: Leaving...]
<jmercouris>
way to pipe string as standard in to uiop program? is it the input arg?