Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
ufo
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
8 ms
·
31.
▲
by
ufo
8mo ago
Related to shadow stacks, I've had trouble convincing the C optimizer that no one else is aliasing my heap-allocated helper stacks. Supposedly there ought to be a way to tell it using restrict annotations, but those are quite fiddly: o
32.
▲
by
ufo
9mo ago
An indirect effect though is that if we no longer dedicate a portion of the grade to homework, fewer students do the homework and then they crash in the written exam. (Students have always been very grade-motivated. If it's not worth p
33.
▲
by
ufo
9mo ago
I was referring to other kinds of assessment such as exercise lists, take-home coding projects, technical writing, etc.
34.
▲
by
ufo
9mo ago
The most frustrating part is that giving feedback on their essays or source code is a lot of work, which goes to waste if the student cheated. Unlike calculators, making an assessment slop-proof often demands more resources to grade it, be
35.
▲
by
ufo
9mo ago
In my work as a professor, AI has demonstrated a noticeable disruptive impact for the worse. It has become difficult to grade students using anything other than in-person pen and paper assessments, because AI cheating is rampant and hard to
36.
▲
by
ufo
9mo ago
The tricky bit for me was figuring out which cache to use, and how to use and test it locally. Do you use the proprietary github actions stuff? If the installation process inside the actions runner is different from what we use in the devel
37.
▲
by
ufo
9mo ago
How do you handle persistent state in your actions? For my actions, the part that takes the longest to run is installing all the dependencies from scratch. I'd like to speed that up but I could never figure it out. All the options I co
38.
▲
by
ufo
9mo ago
Not at all; the charge happens at the end of the proccess, after the article was reviewed and accepted for publication. They charge that much because they can.
39.
▲
by
ufo
9mo ago
They charge a substantial premium for that service. The open access publication fees are typically hundreds or even thousands of dollars per article. There are other platforms that can offer a similar service for much cheaper, but scientist
40.
▲
by
ufo
9mo ago
A big footgun with strncpy is that the output string may not be null terminated.
41.
▲
by
ufo
10mo ago
I think what the other poster was trying to say is that the other AI chatbots would be more subtle and their bias would be harder to detect.
42.
▲
by
ufo
10mo ago
That was already the case in previous versions of Lua. You could assign to the loop variable but the assignment would be overwritten in the next loop iteration. https://www.lua.org/manual/5.3/manual.html#3.3.5 The
43.
▲
by
ufo
10mo ago
I wonder if there would be a way to piggyback on top of GCC's nested function extension. It does something a little bit similar, with the dynamically generated functions.
44.
▲
by
ufo
10mo ago
That's all happening at compile time. I only meant to say that the function's inferred type isn't what you'd expect.
45.
▲
by
ufo
10mo ago
Indeed. Unification-based type inference doesn't work great when the type constraints are inequalities.
46.
▲
by
ufo
10mo ago
Languages with local type inference can sometimes omit type annotations from lambdas, if that lambda is being returned or passed as an argument to another function. In those situations we know what the expected type of the argument should b
47.
▲
by
ufo
10mo ago
In Haskell, type error messages are always like "types A and B should be equal, but they are not". The problem is that, without type annotations, the compiler cannot know if it is A or B that is wrong, which can result in confusin
48.
▲
by
ufo
11mo ago
I'm following the convention that lists the smaller value to the left. I would write [-1,-1-n) as (-1-n, -1], which is a shifted version of (-1, n-1]. The supposed advantage of 0-based indexing with half-open ranges is that the program
49.
▲
by
ufo
11mo ago
The problem is that half-open ranges work best when you the start is closed and the ending is open. In forward iteration we use [0,n) but for backwards iteration we have to use (-1, n-1] or [0,n-1], both of which are kinda clunky.
50.
▲
by
ufo
11mo ago
That particular EWD is one of my pet peeves, because of how it always pops up in discussion about array indexing. There are several situations where 1-based indexing is better, but which Dijkstra doesn't mention. For instance, one-base
51.
▲
by
ufo
11mo ago
I think he's just saying that mutation is ok if it's something loopy, like changing the loop counter or updating some running sum. So both i+=1 and ++i are fine.
52.
▲
by
ufo
1y ago
The tail calls in question are C tail calls inside the inner interpreter loop. They have nothing to do with Python function calls.
53.
▲
by
ufo
1y ago
Definitely include Roberto's Programming in Lua book in your list. Specially if you'd like to script Lua together with C. The book has a good primer on the Lua-C api in its latter half.
54.
▲
by
ufo
1y ago
Naturally, the main catch is that this only detects the violation at run-time. It also won't stop you from accidentally overwriting a global variable that already exists.
55.
▲
by
ufo
1y ago
It's similar to math olympiad, but for algorithms.
56.
▲
by
ufo
1y ago
Last but not least, those deciders were implemented and verified in the Rocq proof assistant, so we know they are correct.
57.
▲
by
ufo
1y ago
Commercial cake mix is ultraprocessed,you likely won't find those ingredients in your pantry. The flour is bleached, they add emulsifiers you wouldn't find at home, the vegetable shortening is jydrogenated, etc.
58.
▲
by
ufo
1y ago
Possibly because it links to kiwifarms (nasty website to say the least)
59.
▲
by
ufo
1y ago
If you plan on drying it on a clothesline.
60.
▲
by
ufo
1y ago
The problem they were discussion in the linked Github issue are pipelines where the functions receive more than one argument. const x = fun1(a, 10) const y = fun2(x, 20) const z = fun3(y, 30) In this case the pipeline versi
More ›