Sign in

Srijan Paul

@injuly.in
59 followers 35 following 38 posts

FP • Manga • Programming Other interests include Shin honkaku and RTS video games. More: injuly.in

PostsRepliesMedia
Srijan Paul @injuly.in · 06/06/2025
Huuuuuuuuuge
050
Srijan Paul @injuly.in · 10/02/2025
It's also supported by other VCS providers like codeberg (.codeberg/... instead of .github/..., everything else works the same). You can also run gh workflows locally with "act".
100
Srijan Paul @injuly.in · 10/02/2025
Agreed with the payloads bit. Errors are rarely useful without payloads, and implementing payloads is basically just going back to the C way of doing it.
000
Srijan Paul @injuly.in · 14/01/2025
I'd be interested to learn too if you find out.
000
Srijan Paul @injuly.in · 14/12/2024
A fresh install of ghcup with is 4.8G today. From what I can gather, a lot can be shed with solid effort. I hope the devs take note at some point.
4.8G fresh install of ghcup
010
Srijan Paul @injuly.in · 11/12/2024
Nearly every scientific paper has been written by somebody with the "et al" sur name. We can't let research be monopolised by the et al family! Who's with me?
010
Srijan Paul @injuly.in · 11/12/2024
Modules have the same drawbacks as free functions – I have to know which function I want to call beforehand. e.g: I want to get the `head` of a list, or a default value for empty lists. Do I import Data.List.Extra? Data.List? Relude? Prelude? With dots, I'll see the right one in suggestions.
020
Srijan Paul @injuly.in · 09/12/2024
Just bought the new AMD Ryzen MacBook Surface Pro. Loving it so far.
000
Srijan Paul @injuly.in · 08/12/2024
I've done it, don't really regret it. `Types` was the easiest way out of not having cyclic dependencies.
030
Srijan Paul @injuly.in · 06/12/2024
Very Nice! Here's an idea you might like: Map every Op to a "stack effect". e.g: `add` can have a stack effect of -1 (pops two, pushes one), and `get` can have 1 (pushes one, pops none). The computing "maximum" stack size for a function is is nearly 0 overhead (just a global var in the generator)
010
Srijan Paul @injuly.in · 01/12/2024
Revisited Warcraft 3's campaign this weekend. Truly a timeless game. It's just as fun today as it was years ago. If the old Blizzard and RTS playerbase were still around today, I could hope for a WC4.
010
Srijan Paul @injuly.in · 01/12/2024
Ha, Jam's parser is a single 7k LoC file as well. Bun's parser is 25k LoC, IIRC. Though that one is a little unwieldy.
100
Srijan Paul @injuly.in · 30/11/2024
What in the twisting nether is this captcha...
000
Srijan Paul @injuly.in · 29/11/2024
Taking a look this weekend. > ping me if I forget will do!
000
Srijan Paul @injuly.in · 29/11/2024
Playing Silent Hill on DuckStation this weekend.
020
Srijan Paul @injuly.in · 25/11/2024
Not rude in the least. It's not everyday I get constructive criticism like this, so I appreciate it.
010
Srijan Paul @injuly.in · 25/11/2024
Once again, thanks a lot for sharing your perspective. I'll take some time out this weekend to see what I can learn from elm-review/format, and if I find any unanswered questions, I'll try to get in touch with you. Once I have a demo-able tool, I'd love to hear about your thoughts on it again ❤️
110
Srijan Paul @injuly.in · 25/11/2024
My primary focus is on just three tools for now: optimizer, linter, formatter. My goal isn't to be an all encompassing JS solution, or replace ESBuild or NPM (I trust @rolldown.rs for that!) I try to focus on polish, and have the "tooling" layer be as transparent as can be.
110
Srijan Paul @injuly.in · 25/11/2024
convince many people to use it. And I'm perfectly fine if I build a polished, reliable tool that's useful to just me, and people who have similar needs. I'd love to see anything you can share about this.
110
Srijan Paul @injuly.in · 25/11/2024
Re: Formatter From what I've seen, people do care about prettier compatibility (Biome mentions that they have 97% prettier conformance, and that's honestly a great selling point). However as you said, I too prefer config-less formatters. I already know that this means Jam's formatter won't...
110
Srijan Paul @injuly.in · 25/11/2024
Re: TypeScript I honestly don't believe I could juggle a day job and then implement something like stc right now even if I tried, seeing that even Donny has given up on it. So yeah, no plans of working on it for now.
110
Srijan Paul @injuly.in · 25/11/2024
...and ship them as shared libraries. There is a lot of research to be done here, and I hope for tools like oxc to considered it and figured something out by the time I get there
200
Srijan Paul @injuly.in · 25/11/2024
... get the toolchain to a point where I can gauge demand for custom rules, and then figure out a plugin API (Zig shared lib plugins are already WIP, but I understand they're not as amenable for developers). I want to see if it's possible to give users a seamless way to write plugins in zig...
100
Srijan Paul @injuly.in · 25/11/2024
Re: Custom Rules I mention this in Jam's README, but the eventual goal is to build a JS plugin available using either Kiesel or QuickJS (not immediately though, but it's a part of the reason I'm helping Linus out with Kiesel dev). Figuring out a nice Zig->JS API is challenging. I hope to...
100
Srijan Paul @injuly.in · 25/11/2024
That said, I can't claim I've worked on very capable multi file analyzers before, So if you can talk about some tools (elm-review?) that might be doing this, I would love to hear about it. You're spot on about the usefulness of a tool that's limited to the file scope, and Jam won't be that.
210
Srijan Paul @injuly.in · 25/11/2024
1. Because there are no pointers, serialising and deserializing trees is extremely fast (just a read + bit-cast) = scope for FS caching. 2. Because the tree uses very little memory (compared to ESTree and red-green/rowan trees), storing it in memory for multi file analysis should be feasible.
110
Srijan Paul @injuly.in · 25/11/2024
Re: Multi-file analysis You hit the nail on its head. It's what I've seen in practice as well. In fact, this is one of the reasons I have chosen this compact AST format. This has two big advantages for taint checking specifically.
110
Srijan Paul @injuly.in · 25/11/2024
Thank you Jeroen, for taking the time to write this detailed response. I've limited exposure to the Elm ecosystem (made maybe 2-3 small apps with it), but I have heard great things about elm-review and elm-syntax. I'll try to articulate my response in this thread.
110
Srijan Paul @injuly.in · 25/11/2024
Thank you! I'll take a look. I've been using some command line tools alongside wa2 :)
100
Srijan Paul @injuly.in · 25/11/2024
Right on!
010
Srijan Paul @injuly.in · 25/11/2024
Ahahaha, W
010
Srijan Paul @injuly.in · 25/11/2024
And yeah, it's DeepSource :)
010
Srijan Paul @injuly.in · 25/11/2024
Gotcha
110
Srijan Paul @injuly.in · 25/11/2024
Sorry 🥲 P.S: long ago, I watched your "why you hate your linter talk", and a lot of my work (both day job, and OSS) has been to remedy the issues you brought up.
110
Srijan Paul @injuly.in · 25/11/2024
An average day spent inspecting WASM binaries
3174
Srijan Paul @injuly.in · 16/11/2024
In an isolated loop like that, it's probably V8 and not node, which is surprising still.
020
Srijan Paul @injuly.in · 01/11/2024
I work on compilers and static analyzers, and like functional programming, systems, and gamedev :)
060
Srijan Paul @injuly.in · 01/11/2024
JS is a weird language to parse. Here's a tree sitter bug where instead of throwing a parse error (forbidden comma after a rest element), you get a valid parse tree.
010