Sign in with Twitter

Username:

💻🐴Ngnghm @Ngnghm Lair of the French Resistance

Welcome to the Swiftian World of Houyhnhnm Computing ("Hunam"). I am @fare's software alter ego (but see @phanaero for cryptofoo). Call me "Ann". 🐎Read my blog!

280 Following   946 Followers   2,934 Tweets

Joined Twitter 8/2/15


Notice how the ground case is the biggest case, not the smallest case.Grounded recursion in Common Lift. https://t.co/k9tih7mbZK
10/18
2020
No, Cthulhu didn't take possession of my soul. It's just Leonora (4) typing on my keyboard.lR"Qarl'oacahhotnh]o']acoar
10/15
2020
BLEG: What are the best or most famous programming-as-game games? I know these: Robot Odyssey (1984), Core War (198… https://t.co/ONjn8nOtQA
10/14
2020
Was just discussing hiring with a client and spontaneously said, “Cultural fit is the opposite of diversity”. Div… https://t.co/WuE5yNZM5l
Retweeted by 💻🐴Ngnghm
10/13
2020
TL;DR for the first part of my thesis: to achieve the full potential of semantic reflection, you must reify not jus… https://t.co/IfvkKnD3Kp
10/12
2020
@dyokomizo Those who command though they cannot, are fools. Those who obey nonetheless, are greater fools.In any case, I bricked Véra's Chromebook while re-flashing its ROM; her Amazon Fire died its charging connector not… https://t.co/n3Ffkcha9N
10/11
2020
In the end, thanks to the resized partition, I could install https://t.co/8BHU3tkcRQ 10 on top of… https://t.co/BIbt9jJBrrAlso, parted was unusable until I configured it with the unit s command.Resurrected my old Nexus 5. The near-dead battery causes ghost click unless you put the brightness to 0. Had to dow… https://t.co/f7mkww9ASL
10/10
2020
I will give an online presentation for the LispNYC monthly meetup on "Prototype Object Programming in Gerbil Scheme… https://t.co/G4Urt8Rauo @rickasaurus The alternatives to late bound code increments are a lot of redundant and fragile duplication, or ugly… https://t.co/KCOCm1oza7 @rickasaurus If by "coupling" you mean "factoring the code better to share libraries of incremental code components… https://t.co/hFulo7gbw8 @MayaPlentz @balajis Or maybe YOU are so hopelessly brainwashed that you can't distinguish the reality of "democrac… https://t.co/eyAJCP5F0C @awbjs My current problem is persistence of activities, and in particular their continuations, in a way that plays… https://t.co/prpY87bEdn
10/7
2020
Nice "cheat" for single-robot puzzles: the remote controlled robot. Use flip-flops to bounce off walls up/down and… https://t.co/pS8Yv5r8EK
10/3
2020
@chatur_shalabh First, I envision programming in augmented reality with a mix of drawing in a notebook, voice comma… https://t.co/syT4pYpyTg
Retweeted by 💻🐴Ngnghm @chatur_shalabh Second, we can express our requirements, desiderata, intentions for programs in constraint language… https://t.co/q5fcAoTJAA
Retweeted by 💻🐴NgnghmRoaming the Streets of Robotropolis with my daughters. Not sure how much they retain of it, but at least they get a… https://t.co/DW3csIFnST
10/2
2020
This blog post condenses all the worst advice on how to behave to get ahead. Good companies develop a kind of immun… https://t.co/C6eurATNJW
Retweeted by 💻🐴Ngnghm
9/29
2020
@seagreen__ @msimoni eslisp https://t.co/e3kYtFCUmR was also suggested by @khinsen @obadzz Well, Gerbil Scheme actors uses the underlying Gambit Scheme's threads, or can spawn multiple processes or… https://t.co/zdH5QMTlWL
9/28
2020
@obadzz As a Lisper, I also don't find Clojure earth-shattering, though it did have many good ideas and is a practi… https://t.co/4HApX4S2Ow @seagreen__ If to you FEXPRs count as "minimal", you might love the lambda way https://t.co/eGsqC8xadC or some port… https://t.co/OJaWYBr60X @seagreen__ Too much choice, depending on what "simple" actually means—from a text-substituting calculus in PHP to… https://t.co/E3cNNDigZT
9/27
2020
@dyokomizo Savior Democracy. It's just like Democracy, except that Democracy needs to be saved, so saviors save it… https://t.co/GdQArQWiox
9/24
2020
From an economic point of view, in the short term, a language ecosystem is a consumer good of which you are merely… https://t.co/aqAr5vSWlW
9/23
2020
1 There is a set of management mistakes that managers make over and over again. Especially likely for newer manager… https://t.co/AEtG9ycpTb
Retweeted by 💻🐴Ngnghm
9/22
2020
@Kitten_Tech ... and then there's the interaction of parameters with delimited control as well as threads.
9/21
2020
@Kitten_Tech Looks like Gambit works that way: an shared inherited binding can be read or side-effected by multiple threads.
9/20
2020
@missingfaktor @vzverovich Actually, I *do* presume of the mindset of the authors, since they failed to enjoin thei… https://t.co/bXcvbsgecK @missingfaktor @vzverovich I won't presume the mindset of the authors. But I deeply despite the mindset of the ravi… https://t.co/uphP4w2CPQ @missingfaktor @vzverovich Or that a TODO: "generalize this by abstracting that" remark is a useful comment? Also agreed. @missingfaktor @vzverovich Or maybe you mean that an informal description with pseudo-code can be useful to teach i… https://t.co/8KGh9e3S6M @missingfaktor @vzverovich Not sure what your point is. That informal metaprogramming of brains with pseudocode is… https://t.co/xjJGp4cLGK @missingfaktor @vzverovich Indeed. Again, macro definitions are useful. @missingfaktor @vzverovich In other words, pseudo-code is nice, but real code is better. People content with execu… https://t.co/X4ISNFC470 @missingfaktor @vzverovich The underlying technique? Yes, macro definitions are useful. Duh. @vzverovich "Design Pattern" means "My programming language is for idiots who can't be trusted with macros yet have… https://t.co/jdU4WGM9zp
Retweeted by 💻🐴Ngnghm @vzverovich "Design Pattern" means "My programming language is for idiots who can't be trusted with macros yet have… https://t.co/jdU4WGM9zp
9/19
2020
@jeremysiek @PHDcomics Nah, because then it's in git with automatic numbering via git describe. @twit_spires Funny, that's basically also what SRFI-39 and R7RS say. Standardization: trying to have tens of opini… https://t.co/W3Vt5G4oAk
9/17
2020
@svetlyak40wt In CL, you maintain alists of symbol/value bindings to dynamically establish in new threads with PROG… https://t.co/a7wznx3FwHLovely that the interaction between dynamic parameters and threads is just as under-specified and implementation-sp… https://t.co/vmXcLKX4ow @PLT_cheater The light is on. The machine worked after I initially unscrewed the write protect but before I flashed… https://t.co/y7C47RVghG @PLT_cheater Can you translate to plain English?Got a cheap ch341a mini programmer with clip from Amazon. Took me over two hours to figure out that the reason it w… https://t.co/62MU57hXP6
9/16
2020
@awelonblue Make it "supercombinators" and "active reduction cursors" if you want to deal with compiling parallel p… https://t.co/Ot9KPwg1DwUnless you're doing global compilation of a closed program, the type of continuation frames is necessarily open—als… https://t.co/Z59uHENbBH @snmsts I put a trackball in the middle of my Kinesis keyboard. I use it with either hand, or sometimes both, with… https://t.co/krYhMRvEAK @shapr I would definitely hire, if they can be interested in working on the things that I need get done.
9/15
2020
Had a hell of a time removing one screw while taking apart Véra's Samsung Chromebook 3 to disable its write-protect… https://t.co/otGcdsLT1F
9/14
2020
“Forth's culture of simplicity is worth writing about. We aren't used at all to willingly accept constraints on con… https://t.co/Zn2ivyv9Yv
Retweeted by 💻🐴Ngnghm
9/9
2020
There is also a macro to define memoized functions and apply/funcall and remember results. The only thing I miss is… https://t.co/0sqyJlc0l9
Retweeted by 💻🐴Ngnghmthe "everything is a file" philosophy of Linux is just a really fancy way of saying "everything is stringly-typed" [ducks]
Retweeted by 💻🐴Ngnghm
9/8
2020
Yesterday a jr. employee reached out to me to give me some negative feedback about a decision I made. Inside I was… https://t.co/BemFxs3j33
Retweeted by 💻🐴Ngnghm
9/5
2020
@runarorama In OCaml, there is Piqi—shouldn't be too hard to adapt it to Haskell.That Git competitor written in Rust shall be called "rustine" (patch, in French).
9/3
2020
@lemonodor Next up: surveillance aircrafts drawing penises in the sky.
9/2
2020
@ChiefScientist If you're still running processes from the "electoral politics" rootkit, reboot from a fresh CD, an… https://t.co/pYWlR2LGOg
9/1
2020
@vardi @debasishg Escherberus!
8/31
2020
@tweagio I've been watching NixOS for over a decade, using it on my laptop then desktop for many years, finally mai… https://t.co/oE8IrUAHFW
8/27
2020
@ksigmund @sinisalouc @ashprakasan Programming is vast enough that it can be many more domains than any human may h… https://t.co/KEUHqvh8EE
8/26
2020
To be fair, while equivalent Go programs are indeed 10x the size of Lisp programs, Java programs may be only 5x the… https://t.co/TDgduutNoe @sinisalouc @ashprakasan The more abstract code *is* simpler. But only in a larger context that involves more menta… https://t.co/qDw8CDUScu @khinsen Gerbil Scheme, but it makes standard use of syntax-case, plus various utilities that could be implemented… https://t.co/ybtccE9Lda @oliverbeige @_julesh_ Which is why the most irrational beliefs make the best Shibboleth to distinguish tribe membe… https://t.co/w3UkyMUaVkI haven't fawned enough about with-id. It lets you write macros in the simple hygienic rewrite style (syntax-rules)… https://t.co/m0tuOEo7Ih @yoshikischmitz No matter how large the tables, any output to the console can be done in O(1).
8/25
2020
@k0001 C programmers? That's what museums are for! @johanatan Ideally, you could feed the solver the CLHS, the code for ASDF 1 (or even KMP's original article), and i… https://t.co/7TNDOINvKF @johanatan Next: programs as puzzle canons. AIs that can solve them automatically for you. AIs that can write them… https://t.co/ufZ7fRBkqK @johanatan What I'm using right now is not very sophisticated, unlike what I long for: - solve code for specificati… https://t.co/Zl9G4ZhlJX
Retweeted by 💻🐴NgnghmFast tries, now with incremental Merkleization and persistence in 50 lines of code (plus 150 lines of general-purpo… https://t.co/caIFFXPCeQ
Retweeted by 💻🐴Ngnghm @johanatan What I'm using right now is not very sophisticated, unlike what I long for: - solve code for specificati… https://t.co/Zl9G4ZhlJXDefault methods that define X from Y and Y from X are very practical... until you forget to define either X or Y. F… https://t.co/lfWmliaxz9
8/24
2020
@johanatan No thanks. If I wanted a high-level FORTH, I'd use Factor or POP-11. @johanatan I want to see a GC in FORTH, and the "FORTH" code on top. @yawaramin Do you and other OCaml library authors actually use this and related techniques, or is it just for the s… https://t.co/mxxSdZE7qA @johanatan Also, FORTH is probably too low-level for the things I'm doing in Lisp. Maybe PostScript would do. @johanatan FORTH to mention I wanted, but space I lacked.By contrast with yesterday, today I'm having plenty of issues that structural types are essential to helping me sol… https://t.co/0gZmPu0dlg @JRstract Yeah. It's not something comfortable without editor support. @JRstract Yes, but the response lies on a common argument: a Lisp program will have much *fewer* parentheses than a… https://t.co/WxBbazLrVsTFW someone complains that Lisp is verbose with lots of parentheses, but the equivalent programs are 10x the size w… https://t.co/PcRyMb2yEw
8/23
2020
@yawaramin Make it possible to pass them to a function that takes two tries of the same height. @yawaramin How do you write a function that takes two tries of arbitrary height and return two tries of equal heigh… https://t.co/NSFSJnCE0cWhat idiot wrote this buggy code? This idiot. More like, what idiot trusted his types too much and failed to test his code enough?I looked at the OCaml code I ported to Scheme... it had this bug, and many other bugs I found. Types only help you so much. @yawaramin Yeah, and then interoperation between this and the regular dynamically-heighted that you want most of th… https://t.co/yL2UQuLlbM @dyokomizo Yes, you could do anything with dependent types. I like to say that my Lisp style is to use dynamic dependent types. @grhmc @justincormack @tzeejay Hopefully you can add the build farm's public key to the whitelist on the local computer.Yesterday: find and fix the bug. Today: make a future variant of this bug inexpressible. Yet another bug where str… https://t.co/EDB8M3hXpyLesson learned: I wasted hours yesterday chasing a bug due to my failing to use either macros or higher-order funct… https://t.co/p7x4PofhjB
8/22
2020
Interestingly, part of a justification for the Lindy Effect is anthropic principle / observation bias: most people… https://t.co/NvJkZcFqSU @ashprakasan - FP was not yet usable then. - FP used more then-scarce memory. - FP's parallelism advantage didn't m… https://t.co/hVWoLMlJj8
8/20
2020
@aeliasen B @tomvdsom I'm aware of multimethods, that Clojure rightfully lifted from CLOS. See my ILC 2012… https://t.co/eXd1UPi87P
8/19
2020

0