freenode/#sicl - IRC Chatlog
Search
7:48:08
no-defun-allowed
Admittedly not really, I just...really disliked the first year at this university.
7:49:26
no-defun-allowed
Like surely how computers mangle arithmetic, and how things exist in memory should be the least of your concerns when you haven't written a "Hello, world" program, but apparently that's first week material. And most of the information was wrong, like saying the minimum number of instructions you need on a computer is about 10 (or is 1 about 10?)
7:51:41
splittist
no-defun-allowed: I am cynical, so take this comment in that spirit. I don't think you should expect to learn things at university from lectures (beyond what the examiners will want at the end of the year, or TAs will want for the coursework if that counts, too). You will learn things because you have time and access to facilities and, if you are lucky, fellow minds, that are curious about the same things.
7:51:49
no-defun-allowed
Apparently I have too high standards, never mind that I accumulate US$7000 of debt a year to rot my brain on this "education".
7:52:27
no-defun-allowed
splittist: I am well aware, I have acknowledged that I'm at university to get a piece of paper that suggests I can take this shit. Sometimes I wonder if I can.
8:00:13
no-defun-allowed
I've felt less capable of handling anything until I leave university, this week, let alone for much, much longer. But that's not a #sicl discussion.
10:12:12
ck_
Maybe this is old hat to you, but I just got some amusement out of looking at the github statistics for SICL. According to it, there's 0.1% "NewLisp" code in it :)
10:35:05
no-defun-allowed
(It also occurs when you find lexical scoping too hard to implement in your interpreter, and write long paragraphs about how deep copying return values between stack frames is faster than garbage collection, and how mutable data structures and variable arguments are far too complicated. Okay, I'll stop.)
10:41:11
no-defun-allowed
I'll leave it at "I like to read NewLisp propaganda when I'm having too good of a day".
13:24:38
jackdaniel
github gathers statistics how much of the code written in cl is new and labels it as newlisp
16:24:34
beach
So the plan is to change how HIR is transformed in order to adapt it to the call-site optimization technique.
16:24:40
beach
There will no longer be any FDEFINITION hoisting. Instead, I will collect all the FUNCALLs that call the result of an FDEFINITION together with all other instructions that make global function calls like CREATE-CELL, ENCLOSE, etc.
16:24:46
beach
During bootstrapping, when the HIR code is "tied" to an environment, The FDEFINITION will be replaced by a CAR with a constant input being the function cell. HIR transformations will then be faster and simpler, because there will be way fewer shared variables. And the static environment of most functions will be empty.
16:24:47
beach
MIR-to-LIR will ignore the FUNCTION input of FUNCALL and it will not attempt to put the inputs in any special place, since that will be taken care of by the callee.
17:46:44
beach
I'm off to fix dinner for my (admittedly small) family. I'll be back tomorrow as usual.
18:55:23
aeth
ck_: no-defun-allowed is right... there's this really terrible heuristic in the Ruby library used by both Github and Gitlab that basically assumes anything with "define" in it that ends in .lisp is Newlisp. This is absurd, of course, since if you don't have enough of the CL heuristics to override it (like putting all of your conditions in one file) then you get Newlisp false positives.
18:55:55
aeth
ck_: This is the fix: https://gitlab.com/zombie-raptor/zombie-raptor/-/blob/4a09d285b993bbfd67864842df343910e7fe9d99/.gitattributes
18:57:59
aeth
And if anyone wants to have, say, 2000 useful pull requests on Github, this is proably the way to do it.
19:12:45
scymtym
aeth: you are kind of late to the party with that idea: https://github.com/s-expressionists/Eclector/pull/34