freenode/#lisp - IRC Chatlog
Search
9:06:10
siraben
It really doesn't make much sense to use CMD+C or C-c for copy and the same for paste
9:06:15
aeth
pjb: You can do just about everything in Emacs (at least the X11 Emacs, which has additional features over the in-terminal Emacs), but it's not the best option for anything visual imo. Web browsing, image viewing, PDF viewing, etc. I've done them all, and Emacs's model is... limiting there.
9:06:40
aeth
pjb: I hope a CL Emacs takes that into account when there's a popular/serious one out there.
9:06:57
aeth
I think it turns PDFs into images and then uses its image viewer, which is why it's slow and limiting.
9:07:44
aeth
Emacs is an app for everything, but there's a lot of things that you can't do without heavily rewriting how Emacs thinks about the world (i.e. never)
9:08:25
siraben
Or one could create an elisp to CL compiler, refactor the C code automatically and boom!
9:08:50
aeth
A good Emacs replacement in CL would essentially just be a CL app platform all in one application.
9:10:34
aeth
As soon as I saw Google I immediately knew it wasn't going to be what I was looking for because Google only uses CL when they acquire a company that uses CL (afaik).
9:11:55
aeth
The thing is, GNU Emacs is not a text editor. It's an integrated application platform. You're not going to replace it with a text editor. This also means that GNU Emacs itself is not a particularly good Emacs because it was never designed with web, PDF, PNG, IRC, etc., support in mind.
9:12:38
siraben
So I imagine the work would change from "let's rewrite Emacs" to "let's replace the core of Emacs"
9:13:05
siraben
But to allow Emacs to have a swappable "kernel" there needs to be better API documentation
9:15:13
aeth
siraben: In its list of 7 design decisions, the only one I agree with is the front-end/back-end separation.
9:16:43
aeth
And while high performance is a nice goal, the rise of Electron apps has shown that shipping a working product seems to be valued more than performance. Sadly.
9:17:02
aeth
Fortunately, that means you can use a lot more RAM than you used to get away with using, because you're still lightweight compared to Electron.
9:19:03
siraben
aeth: It's like needing to ship a full-fledged browser for something that should be tiny
9:20:34
aeth
There's a middle ground between "rush to shipment and waste all of the resources" and "carefully craft an editor that can compete with vim" (I said vim because emacs's draw isn't that it can edit text). Reasonable optimizations, etc.
9:21:04
siraben
aeth: Rip "Emacs is an excellent OS, the only thing it lacks is a decent text editor"
9:22:49
siraben
aeth: Maybe because the whole mindset in developing Emacs in the first place wasn't "do one thing well" as is common in UNIX philosophy, but "let's do everything"
9:24:44
siraben
Because Elisp, although it's pretty good in what it does, doesn't have much value outside Emacs
9:24:50
aeth
CL's in a "mid tier" performance range, like Java, where you don't have to have a separate scripting language and core language.
9:25:06
aeth
GNU Emacs would probably be much faster if it was entirely in SBCL instead of slow elisp mixed with fast C.
9:26:13
aeth
They want to change to Guile, for some reason, even though CL isn't that different from Emacs Lisp.
9:27:05
aeth
JITs aren't magic, though. I think they have two disadvantages: (1) RAM, (2) startup time
9:27:17
aeth
And #2 would make me hate Emacs. I don't leave it up for days at a time like some people
9:28:17
siraben
I wonder if and how Emacs is going to stick around for the next 10, 20, maybe 50+ years?
9:30:10
pjb
siraben: now, take your favorite OS, and activate the dictaphone function. Have fun dictating a letter. Bonus points to dictage a program (programming language of your choice!)
9:30:17
siraben
pjb: Maybe a brain-computer interface would eventually allow us to program at the speed of thought?
9:30:37
pjb
siraben: the problem is not the brain of the programmer: it's the brain of the listener.
9:31:18
pjb
The point here is that we need AI with much higher AIQ before they can understand us dictating a program.
9:33:54
aeth
siraben: 9/10 people in a computer science program do not care about computers or programming and are just there for the money
9:35:05
siraben
The people (and the teacher teaching it) in my school's computer science course haven't heard about Lisp
9:42:22
aeth
siraben: Just look at the numbers of people enrolled in computer science departments over time.
9:44:59
siraben
My understanding is that it's full of people who /want/ to learn CS, but apparently that's not the case lol
9:46:52
aeth
In my personal experience taking classes in various subjects, the places where most of the undergraduates want to be there are the upper level courses that aren't marketable, like philosophy. (The lower level ones might fill general education requirements.)
9:49:08
aeth
Well, some universities probably has difficult enough computer science classes to get the same effect by the time that the upper level comp sci classes come.
9:50:21
aeth
Not like that's necessarily a good thing. Those universities probably teach a lot of useless C++ trivia.
9:53:21
siraben
If you have even a week of programming experience I would imagine it would be trivial, right?
9:57:05
Shinmera
An exercise a friend of mine tried to solve recently has a really elegant solution in lisp, I think: Determine whether a list is a palindrome.
10:00:42
Shinmera
Everything under the sun, but hardly any of it is Lisp relevant (and thus off-topic)
10:03:13
_death
I once asked someone to define a class for representing classes (in the context of C++)
10:08:46
pjb
fizzbuzz is not that easy as interview question: https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition
10:14:45
aeth
I wonder what the most efficient FizzBuzz solution is in SBCL (limiting it to one implementation so there's an objective, clear answer)
10:15:59
beach
Shinmera: For ELS registration, when I click on "Early regular", it says that the banquet is included, but the banquet option is also selected. Shall I deselect the option?
13:39:10
beach
asarch: In Common Lisp, they are called "conditions", and we "signal" conditions, whereas other languages "raise" "exceptions".
13:43:50
Shinmera
There are THROW and CATCH special forms in Lisp as well, but those provide a non local return mechanism, rather than anything to do with "exceptional situations"
14:09:26
beach
dxtr: The class, the class of the class, the subclasses of those classes, the generic functions that specialize on those classes, etc. etc.
19:20:47
Bike
so when returning the value from (setf mref) it has to box the value, which is a small performance hit. probably pretty small since the input value is probably boxed anyway
19:22:08
Bike
it's possible that if you have the method body end with just 'value' after the setf, the note will go away
20:28:18
troydm
I was wondering if there is anything more prettier than HyperSpec? because everytime I try to read it my inner sense of modern web is shuttered into small pieces
20:29:04
asarch
How do you compile a file from SBCL REPL? (compile-file "arithmetics.lisp") and (compile-file "/home/asarch/arithmetics.lisp") don't work
20:31:00
troydm
fouric: ohh nice, nice I wanted to create something like this 5 years ago, but lack of time didn't allowed me to
20:31:20
fouric
It's still being worked on, but I've begun to use it instead of CLHS for function/macro/special form documentation lookups, and it's very servicable.
20:32:34
asarch
Even with: Failed to find the TRUENAME of /home/asarch/arithmetics.lisp: No such file or directory
20:33:12
troydm
fouric: unfortunately not currently, but I hope I'll have some in near future, as soon as I'll finish some of my stalled projects
20:34:46
Bike
if it can't find it with the absolute path either it's not there or something is really messed up
20:35:12
fouric
(watch as the filename contains unicode characters that *look* like arithmetics.lisp but aren't)