freenode/#lisp - IRC Chatlog
Search
22:24:44
dbotton_
is there a squeak/pharo like x-platfrom graphical environment available for common lisp? in some ways portacle/emas (sans graphics) fills that niche but even so
22:25:43
phoe
everything else that is somewhat usable that I am aware of depends on foreign libraries, like qtools/commonqt which is what I use
22:32:32
aeth
dbotton_: X is designed to permit a client-server separation and there's an X client in pure CL called CLX so McCLIM using the CLX backend on Linux or similar Unix systems can offer a pure CL experience with no foreign libraries.
22:33:55
aeth
Everything else will require CFFI, although it can still be effectively "zero dependency" if it directly calls the exposed OS APIs.
22:44:36
aeth
dbotton_: the problem is that any editor/IDE has to compete with the flawed, but good-enough Emacs in order to get users, so no project has really gotten any momentum
22:51:09
dbotton_
but what though I am thinking about creating is something more like squeak or pharo
23:09:00
Gnuxie[m]
Tbh though, if someone put enough time to it, it is totally possible to beat Emacs+SLIME, it's relatively straight forward what would need to be done
23:23:31
Gnuxie[m]
I meant that it is clear what you would have to do, not that it was gonna be easy
2:22:53
aeth
Gnuxie[m]: I think the issue is one of time. Generally the way to get enough time to do it is to get paid to do a job in a related thing and there just aren't enough CL jobs yet.
5:15:09
beach
I thought the standard had a predicate to test whether an object exists anywhere in a tree of conses and atoms, but I can't find it. Did I make that up?
5:21:45
aeth
reminds me of this, which is slightly different... https://lisptips.com/post/43404489000/the-tree-walkers-of-cl
7:31:48
beach
You may look into two papers. One by Ron Garret/Erran Gat, and another by Hudak and Jones.
7:35:37
beach
The one by Hudak and Jones is entitled "Haskell vs Ada vs C++ vs Awk vs ... An Experiment in Software Prototyping Productivity."
7:41:38
shka_
it is a psychological problem and not many scientists there are interested in programming as it seems
7:42:40
jedii
picolisp looks wow database n web built in and database scales to N nodes.....hoyl crap
7:43:14
jedii
and pharo.org claims by far most produtive since abstracts away other stuff liek js html etc
7:45:54
no-defun-allowed
If I was in a worse mood, I would say something like "you wouldn't need a large N (in your database, provided it's CPU bound) if you had a compiler."
7:46:30
no-defun-allowed
You have cl-who to generate HTML, Parenscript for JavaScript, probably something like that for CSS too.
7:47:33
shka_
jedii: to paraphrase Chris Lattner from the lex podcast, the better language is the language that allows creating better libraries
7:49:29
jedii
postgresql and scylladb.com seem strong or could a lisp thing like manardb do the jobs?
7:49:47
no-defun-allowed
You could use the filesystem, a database (for example, postmodern abstracts away Postgres pretty well), or something else.
7:50:03
jedii
and while I am at it....once you use postgreqsl the art of psotgresql gy says save 1,000s of lines of code by simply doing most work inside teh db and have thing web layer
7:50:29
jedii
in which casw waht abotu naverver+tcl+psotgresql combo would that beat a list solution?
7:51:39
no-defun-allowed
Could you retype your...fourth last message please? (beginning "in which case what about...")
7:53:21
no-defun-allowed
CL would blow Tcl out of the water in terms of performance. The author of the latter basically invented the application/scripting language fallacy by my records.
7:54:54
jedii
and the guy who wrote the art of postgresql claims if you model things in tables then you save 1,000s of lines of code doing things in programming lang you can replace with queries
7:55:59
no-defun-allowed
That is usually true, if it's not possible to embed a declarative language in your programming language. But then appropriating a SQL server is probably easier than rolling your own querying stuff.
7:56:49
jedii
what about something like manardb? would that and lisp together let me ignore psotgresql?
7:58:49
no-defun-allowed
I think a good SQL database would (unfortunately?) be slower than manardb, and may handle crashing better.
7:59:03
aeth
CLISP and SBCL are on opposite extremes. Basically: low ram usage but slow <---------------------> high ram usage but fast
7:59:10
pve
I love postgresql, but when my queries become longer than half a page, I start to rethink my life choices
8:00:10
beach
shka_: It would be possible to do a scientific study concerning the productivity of programming languages, but it would be extremely costly. You would have to have many different teams for each programming language, and you would need to have them develop code for the same specification.
8:01:08
no-defun-allowed
I've seen some long JOIN things that make me never want to touch a database again, but to be fair "long" for a query is about 10 lines to me.
8:01:40
shka_
beach: Probably? It seems to be the bare minimum conditions for the experiment. I think there may be more to consider.
8:02:20
beach
ck_: I don't know. And maybe I shouldn't. I mean, the existence of libraries influences the productivity.
8:02:33
shka_
for instance, for kicks, let's start throwing random changes into specification of the project while the team is working and see how quickly they can adapt
8:03:09
jedii
there should be a programming tournment like with 64 teams like march madness basketball
8:03:21
no-defun-allowed
It depends on how you want to access the data. If you just need to dump it all, then load it later, the Lisp printer or something like conspack could do.
8:04:13
shka_
beach: that's what i meant that it is actually psychological problem (and hard one on top of that)
8:05:05
jedii
lisp could record path to a set of pictures and a terxt blurb and then messages from those interested
8:05:44
jedii
but how to make the upload button and web form for search or filter for onyl people in my home city..
8:05:52
shka_
beach: some are, some are not, but then you have to find some with the interest in programming
8:06:05
no-defun-allowed
Implementing a filter efficiently is fairly fancy, but if you don't have so many objects to filter, then you could naïvely scan objects in memory.
8:07:13
shka_
so i think that in the best case scenario we will have to wait a lot longer before such studies can be conducted
8:08:15
phoe
getting input isn't really the domain of CL-WHO though, that's the domain of the HTTP server
8:08:23
beach
shka_: I don't think it will ever happen, unless some government (China? India?) decides to take action to make their citizens more productive than the compentition.
8:09:23
jedii
has there even been a competition like each team gets I dunno 7 days to make xyz webapp
8:09:37
shka_
beach: i think it may be performed via online collaboration with teams of volunteers in the future
8:10:08
jedii
China seems to not be messing around when it comes to engineering and building.....even fi some videos say they have had missteps
8:10:10
no-defun-allowed
I'd mostly be concerned with how they cope with their spaghetti code over the next 70 days.
8:10:44
phoe
jedii: that would be more of a question of what frameworks everyone utilizes to build that web app since building web apps is a well-developed problem and modern react or whatever builders allow you to slap together web apps really fast
8:12:12
phoe
it's true that you can write spaghetti code in any language, but Lisp makes code much more inspectable and debuggable due to its interactive nature
8:12:25
phoe
have you ever played around with the slime/sly inspector and debugger? or seen a video where someone does that?
8:14:55
phoe
I can only say that they're very nice to program in because the interactive programming paradigm works really well in them; I don't know about vim plugins though because I never used them
8:19:49
phoe
we try to keep #lisp strictly on topic with regard to Common Lisp, and #lispcafe is for everything else
8:23:23
pve
It seems to me that the productivity of a language could mean different things, depending on the experience level of the programmer or the size of the team.
8:37:28
pve
The scenario that is often painted seems to be one experienced programmer equipped with a "better" language (CL?) that can code circles around a team of programmers using a "lesser" language.
8:45:48
beach
pve: Some other factors are involved in that scenario. First, the literature on software engineering suggests a factor 20 difference in productivity between different developers with the same training and the same experience. Second, since communication grows quadratically with the number of members, a team with fewer members gets an advantage.
8:53:34
beach
So, a good strategy for a company would be to try to measure this difference, and then fire the half of the staff below median.
8:54:38
SAL9000
beach: maybe that's where the stack ranking methodology (which is still in vogue in some places, apparently) came from
8:56:23
SAL9000
As far as I understand, the biggest problem there is -- same as with genetic algorithms and neural networks -- measuring employee fitness objectively
8:56:59
SAL9000
That is a problem in any business, but combining subjective measurement and stack ranking seems to cause a true dumpster fire.
8:57:12
beach
Exactly. And that's how this discussion got started. It is extremely hard, certainly at the level of a company or division, to measure productivity of programmers.
8:57:53
aeth
SAL9000: another problem is that it keeps going. Assume you can fire half of the programmers. Well, next year you fire half again, even if they made the cut last time.
8:59:09
SAL9000
they have enough incoming wide-eyed graduates fresh out of uni to keep up with the churn, while the (upper) management feels somewhat secure in that they've risen above the game
8:59:46
beach
A preferable technique would be to identify low-productivity developers and give them training to improve.
9:00:13
SAL9000
assuming that those improvement plans don't become a black mark on one's permanent record, seems like a good idea
9:00:59
SAL9000
from what I've heard, in many places being placed on an improvement plan is tantamount to imminent redundancy
9:01:02
beach
SAL9000: Well, some developers deserve what they get. Like the "performance oriented" ones.
9:02:02
SAL9000
shka_: I assume that most companies would prefer to define "productivity" as "completes projects within the timeframes specified by management, come hell or high water"
9:05:25
SAL9000
Right. I do find "Students do not know how to use a debugger. Instead, they waste time debugging programs with trace output." amusing given that my current boss (loudly) espouses the exact opposite :-)
9:06:27
SAL9000
(admittedly, this is in the context of a 20-year-old C++ codebase involving a JITted custom language)