Wilfred Hughes @_wilfredh
Programming language development, human factors, and a healthy dose of Emacs. Also at https://t.co/faGheKE6VH wilfred.me.uk California, USA Joined June 2009-
Tweets11K
-
Followers3K
-
Following3K
-
Likes1K
Noodling with an interpreter for a statically typed language with reified types (e.g. a list knows what type it contains). Currently I have a single representation of types in both the runtime and the type checker. I think that's a good thing?
I still find it weird that constructors aren't first class functions in OCaml. `id Just` is legal in Haskell, but `id Some` is an error in OCaml. Are there any advantages of the OCaml approach?
I've written my first man page! github.com/Wilfred/diffta… Troff syntax is new to me and a little hard to read -- apparently you shouldn't use blank lines. Turns out you can use pandoc to convert markdown to troff instead.
Watching youtu.be/KWB-gDVuy_I and I'm struck by how weird constructors are as an API. * They promote total functions, making it hard to do validation. * They're hard to split up, because they have special access to unfinished data. * They're like a framework: you get called.
Amazing blog post about running a modern Linux kernel on Chumby hardware, investigating bad CPU numbers from top, and finding a Linux kernel bug from 2009! downtowndougbrown.com/2024/04/why-is…
It's weird how even pure languages tend to treat the Unix execution model as ambient state. Are there any PLs that define a main function like this? fn main(args, stdin, stdout, env) -> exit code
I've written a very small, very bad, type checker for my toy programming language. Within three days, it found a bug in a program I was writing!
I think software maintainers can perceive their projects as way more buggy than they actually are. You spend more time looking at the bug tracker, which is (hopefully!) not representative of typical usage.
Difftastic GitHub Diff
tap> is an elegant Clojure debugging feature: it passes the argument to any functions registered with add-tap. You might set up a custom printer for your data type, or save values for later examination, and you can easily disable the tap too. dev.to/hlship/debuggi…
I've released difftastic 0.57! In this release: * A bunch of improvements around detection and display of binary files. * Fixed some diffing issues with (ironically) text files. * Better diff results for Scheme. github.com/Wilfred/diffta…
I'm delighted that so many people are getting value in difftastic, but there has been a significant increase in new issues recently! Hopefully this is a temporary bump from HN. It's a genuine risk from creating a generic tool: if 1% of devs use it, that's a huge userbase.
The Bitter Lesson: how implementing generic search and scaling compute outperforms custom logic in many situations: incompleteideas.net/IncIdeas/Bitte…
Thinking more about the "auto eval definitions" approach, I think it breaks down when debugging. If I want to step through the existing definition, it'd be really awkward to re-evaluate the definition at my cursor.
The lisp model of programming is generally: write a function evaluate it, interactively call it with some arguments, iterate. Jupyter is similar. Why not automatically evaluate definitions (not expressions) whilst working? It seems like a satisfying way to work with code.
I've release difftastic 0.56! In this release: * Added support for Scheme and Smali * Improved JS, TypeScript, QML and Perl parsers * File permission changes are now reported github.com/Wilfred/diffta…
deech @deech
5K Followers 1K FollowingBozhidar (Bug) Batsov @bbatsov
9K Followers 870 Following Hacker. Lover of parentheses. Emacs fanatic. Author of RuboCop, CIDER, Emacs Prelude and Projectile. Maintainer of nREPL. Not the best, but pretty good.Domen Kožar @domenkozar
5K Followers 1K Following ❄️ Mainstreaming Nix. 💬 https://t.co/wDdH7BL1B5 🌲 @cachix_org founder 💻 https://t.co/mvAnLW2bGd 🌊 https://t.co/KiomSAWa5Jandrew blinn @disconcision
3K Followers 2K Following progaming 🗨️ languages eboy and mousefeel 🖱️ epicure, working on Nintendo® 🎮 Excel™ for the 📱 vpriPhoneKC Sivaramakrishnan @kc_srk
4K Followers 3K Following CTO @tarides_. Profing @iitmadras. Trustee https://t.co/WE1No5QqOA.Mickey Petersen @mickeynp
4K Followers 292 Following "Mastering Emacs" author; software developer; technical architect; devops; EmacsPhil Eaton @eatonphil
17K Followers 557 Following Working on @EDBPostgres. Mostly databases, distributed systems, books, and cooking. 💍🇰🇷Bob Nystrom @munificentbob
28K Followers 2K Following Programming language developer at Google, ex-game dev at EA, wrote "Game Programming Patterns" and "Crafting Interpreters". https://t.co/NSvQZjv923Rick @rickasaurus
9K Followers 3K Following 10x Eng back in the day, Machine Learning Old-Timer, AI Healthcare VP of Eng (https://t.co/NVsJ1ibOVa 🚀) Frmr AI RegTech CTO (Safe Banking Systems, successful exit).Steve Purcell @sanityinc
4K Followers 694 Following I optimise software and human systems, and make them happier. Account dormant, find me on the fediverse via my homepage instead. 👇José Manuel Calderó.. @josecalderon
2K Followers 839 Following Director @HaskellFound , lecturer @umdcs. Jazz, music theory, compilers + privacy, sometimes I combine them. I can also be found @[email protected] I miss Yorkshire@[email protected] @ekuber
9K Followers 5K Following We spent decades trying to invent a sufficiently smart compiler when we should have been inventing a sufficiently empathetic one. 💼 AWS, opinions my ownYisus mendez @Yisus2_7182
642 Followers 5K Following I don't know how to exit vi. Just curious about that, and that, and that.Myah Navo @MyahNavo67201
83 Followers 5K FollowingAnnis Pirkle @AnnisPirkl57981
86 Followers 5K FollowingKolbiceusz @Kolbi213
18 Followers 61 FollowingAlperen Keleş @Keleesssss
6K Followers 1K Following METU CENG 21' | PhD Student at @umdcs | Writing at https://t.co/JYlXbdcnTq | Contact: [email protected]Matthias @Matthias102
3 Followers 55 FollowingZariyah Fanizzi @FanizziZari
33 Followers 5K FollowingMelchiah Mauck @melchiahmauck
53 Followers 292 Following Building https://t.co/dnxwoyVNUA software consultancy, https://t.co/j0H8jZiRei UI, https://t.co/MbN03pDCSa, and https://t.co/Gh1HnW9hVq lang.Silvana Psuty @psuty22213
76 Followers 5K Following- @il_olxz
0 Followers 148 FollowingAarvi Desso @AarviDess
66 Followers 5K FollowingAlice @shibaga90068280
1 Followers 649 FollowingYee Spar @SparYee41906
78 Followers 5K FollowingSusannah Tigert @SusannaTige
22 Followers 2K Following 🌐Susannah | 20 | Earn your own Crypto casino👇🔑zir bst @zirbest
23 Followers 584 FollowingMcTeshe @mc_teshe87553
195 Followers 5K FollowingLisa Bunselmeyer @LisBunselme
98 Followers 5K FollowingMartin Fan @perfectoid_ai
397 Followers 8K FollowingLatanya Dovey @LatanyaDov84629
92 Followers 5K FollowingAndree Denaro @AndrDenar
30 Followers 5K FollowingZhudan @Zhudan5
0 Followers 2K FollowingRosalia Alessandro @RosalAlessand
83 Followers 5K FollowingRavi Shanker @fullcircle24
3 Followers 70 FollowingCleotilde Gainor @gainor40563
67 Followers 5K FollowingTommi Kivelä @tokivela
186 Followers 193 Following Mostly tech stuff. Sometimes tweeting in finnish.Vishnu Pedireddi @Vishnu14
43 Followers 2K FollowingM @iCRJSC
364 Followers 3K Followingjoachim schiele (josc.. @joschelboschel
199 Followers 525 Following freelancer ⚒️, https://t.co/cIQUhYrCQI founder ❄️, open source advocate 🥰xan @xanpeng
18 Followers 146 FollowingBruce O'Neel @BruceONeel2
151 Followers 2K FollowingLawrie Abuna @LawrieAbuna
127 Followers 442 Following Crafting digital experiences with flair. Specializing in web design & development. Let's build something amazing! #WebDesign #WebDev #UXUIopen-mind @benma01
11 Followers 272 Followingnormanradrin @normanradrin
9 Followers 117 FollowingShriram Krishnamurthi.. @ShriramKMurthi
19K Followers 4K Following 🦣: @[email protected] ••• @BrownCSDept / @BrownUniversity || @BootstrapWorld || @PyretLang || @racketlang || compsci || education || cycling || cricket(λ. borkdude) 🌱 @borkdude
7K Followers 105 Following #clojure (#cljKondo, #babashka) * functional programming * whole food plant based * progressive rock+metal * ♥ @lalage_ * https://t.co/yvsOtFMGdodeech @deech
5K Followers 1K FollowingInactive; Bluesky is .. @hillelogram
19K Followers 3 Following No longer on this hellsite. Newsletter: https://t.co/YrRPK2p8Pc Website: https://t.co/gePEeYpVcd Bluesky: @hillelwayne(.)comMara Bos @m_ou_se
43K Followers 454 Following Rust dev, Electronics engineer, Author, @rustlang Library team lead, ADHD, Polyamorous, Lesbian, She/HerAndreas Kling @awesomekling
36K Followers 394 Following 🌅 Recovering addict 🐞 Building a truly independent web browser (@ladybirdbrowser) 💕 Married to @KatalinKultThorsten Ball @thorstenball
21K Followers 758 Following Author of https://t.co/arW0hnVET0 and https://t.co/RN9xXOzhON. Working @zeddotdev. Ex-@sourcegraph. Programming where the rubber hits the road.Satnam Singh @satnam6502
14K Followers 3K Following Punjabi-Scottish-American Haskell hacker at @GroqInc, cook, cyclist, lost in music. ∃🇮🇳 ∧ ∀🇬🇧 ∧ ∃🇪🇺 ∧ ∀🇺🇸 #celiac ex-{Microsoft, Google, Facebook}Justine Tunney @JustineTunney
33K Followers 276 Following I built a C library that lets you compile 12kb static binaries that run natively on Linux, Mac, Windows, FreeBSD, OpenBSD, NetBSD and BIOS using just GCC/Clang.Jack Rusher @jackrusher
8K Followers 207 Following Ex-Bell Labs/AT&T Research'er making art & technology. Extended bio in pinned tweet. 🐘 @[email protected]Bozhidar (Bug) Batsov @bbatsov
9K Followers 870 Following Hacker. Lover of parentheses. Emacs fanatic. Author of RuboCop, CIDER, Emacs Prelude and Projectile. Maintainer of nREPL. Not the best, but pretty good.Patrick Walton @pcwalton
18K Followers 560 Following Programming languages and graphics person. @[email protected]'(Robert Smith) @stylewarning
4K Followers 281 Following Currently flipping bits and rotating qubits. Advocate of open-source math software. You'll often catch me Lisping (or playing piano).Dmitrii Kovanikov @ChShersh
8K Followers 113 Following 🧑💻 Senior SE at Bloomberg using OCaml 🐫 Ꚙ Autistic 📽 Content: https://t.co/6laFNyCooC Opinions are my ownDomen Kožar @domenkozar
5K Followers 1K Following ❄️ Mainstreaming Nix. 💬 https://t.co/wDdH7BL1B5 🌲 @cachix_org founder 💻 https://t.co/mvAnLW2bGd 🌊 https://t.co/KiomSAWa5JMaxime Chevalier @Love2Code
17K Followers 300 Following 💖 ➞ λ Compiler design PhD working on YJIT, a JIT compiler inside CRuby. Cynical optimist. Opinions are my own. 🌈 🇨🇦Erik Meijer @headinthebox
27K Followers 0 Followingandrew blinn @disconcision
3K Followers 2K Following progaming 🗨️ languages eboy and mousefeel 🖱️ epicure, working on Nintendo® 🎮 Excel™ for the 📱 vpriPhoneCharlie Marsh @charliermarsh
12K Followers 777 Following Building @astral_sh: Ruff, uv, and other high-performance Python tools. Prev: Staff engineer @SpringDiscovery, @KhanAcademy, BSE @PrincetonCS.Donal Fellows @donalfellows
231 Followers 117 Following Research Software Engineer, responsible for Taverna Server and a fair bit of the Tcl programming language. Now doing tools to support neuromorphic computing.Ian Vanagas @IanVanagas
855 Followers 894 Following Content @posthog 🤠 Writing at https://t.co/puLIanIwWO More https://t.co/wgEolQAtlX, https://t.co/O1WOjIB2X7, https://t.co/uUxzbiU1rn. 🇨🇦 🦬Richard Crowley @rcrowley
2K Followers 273 Following Why does my bio need to be shorter than a text message?Jacques Carette @jjcarett2
2K Followers 1K Following Computer scientist. Programmer specializing in weird languages. Ex-mathematician. Loves cooking. Dabbles with quantum. Uses generative techniques everywhere.Robert Pankowecki @pankowecki
2K Followers 1K Following Full stack developer, software architect, working mostly with Rails and React.js #Railsehashman@cloudisland... @ehashdn
3K Followers 393 Following Queen of Debian Clojure, Her Grace, Dutchess of Node, Empress of Symbol Versions, Conqueress of ABIs. SWE @Apple. partition-tolerant, available, not consistentConor Ford / Hideouts @RSPN_Hideouts
108K Followers 915 Following Apex Security @Respawn | Speak softly and carry a big ban hammer. | I make music sometimes | My views are my own.Adam Jacob @adamhjk
18K Followers 1K Following CEO of the System Initiative, Co-Founder of Chef. Sustainable free and open source software communities. Music. He/Him. Mastodon: @[email protected],Michael Müller @mmueller2012
59 Followers 66 Following Working on @Semantic_Diff, software developer and open source contributor.Zanzi Tangle, now at .. @tangled_zans
3K Followers 322 Following Turning Category Theory into code https://t.co/B0egvR0lmbJakub Beránek @Beranek1582
348 Followers 117 Following Rust Project contributor, PhD student. Programuju, hraju (si), poslouchám :-)Guillaume Gomez @impe.. @imperioworld_
3K Followers 111 Following Rust language reviewer and contributor, rustdoc team leader, GNOME foundation member, owner of the Gtk-rs organization https://t.co/gSCISSPYX3Boudewijn Danser @boudewijndanser
255 Followers 230 Following Developer working with TypeScript, React, JavaScript and humans. Also a Lego nerd, metalhead & father of 2. #TeamRockStarsTaym @taym95
352 Followers 862 Following Software developer, I do cross-platform @Signifycompany, @tweethueboneskull BONESKULL @b0neskull
1K Followers 740 Following OSS: LavaMoat / Endo / ex Appium, Mocha, Node.js / Podcast: @JSPartyFM / @[email protected]David Kleidermacher @DaveKSecure
1K Followers 400 Following @Google Security/Privacy - @Android, @GooglePlay, @madebygoogle, team ASAP and team DSAP | Opinions my own | linkedin davekleidermacher, @[email protected]stefan brunthaler @stbrunthaler
291 Followers 84 Following Language-based security is the continuation of compiler construction by other means. PLs, pretty much all things compilers. also: [email protected]Joseph Garvin @joseph_h_garvin
528 Followers 2K Following voicecoding latency and throughput hacker. How did I get here and what am I doing in this hand basket? @[email protected] @josephhgarvin.bsky.socialAlex / KATT 🐱 @alexdotjs
19K Followers 2K Following 👋 I'm Alex & I tweet about web dev stuff. 👉 Creator of @trpcio (⭐️30k+). 🧙♂️ Open-sourcerer & fully-stacked typescripter. 🗣 Speak 🇸🇪🏴🇧🇷Louis Maddox @permutans
2K Followers 4K Following Combinatorially curious. 👨💻 ENTJ-A R&DJ @beatchainmusic. ML paper feed @naiveoculus, sci alt. @biochemistries, & maths papers @appendens.Latif Nasser @latifnasser
78K Followers 5K Following nerdy writer type. mostly harmless. co-host, wnyc's @radiolab. host, #theotherlatif and #connectednetflixZach Edwards @thezedwards
7K Followers 8K Following privacy & data supply chain research // Using this less - email me @ [email protected] for Signal // politico // #build🔥🕸 ρᔕ𝐞ỮĎ𝔬Ňʸ๓Øᵘ丂Tom Warren @tomwarren
276K Followers 2K Following Senior Editor at The Verge @verge ║ I cover all things Microsoft, PC, and tech║ DMs open║ Got a news tip? msg me on Signal: tomwarren.01Ives van Hoorne @CompuIves
27K Followers 2K Following Co-founder of @codesandbox! I like cookies 🍪🏳️🌈Joey Dodds @n1nj4
730 Followers 327 Following Automated reasoning, cryptography, and systems at AWS This is a personal account. https://t.co/mHZnPLjx9pSam Rose @samwhoo
5K Followers 945 Following Writing visual guides to programming concepts at https://t.co/IbaGdm3TrO. Mastodon: @[email protected]Martin Janiczek @janiczek
953 Followers 487 Following Elm dev @ Vendr. I love to start things and little one-off experiments. Drive for teaching and unblocking others. He/him.The Bloop Museum @bloopmuseum
699 Followers 59 Following Bloop is an Electronic Entertainment museum focused on computers, audio, video, and games! The Maryland Technology Museum hosts us just north of Baltimore.Andrew Healey @healeycodes
1K Followers 624 Following software engineer @vercel • lots of words about software on my website • @recursecenter alumCM Harrington @octothorpe
2K Followers 567 Following UX Manager. Host of Ruining It For Everyone on iTunes. Creator @shaboogiebot I speak for me alone. Purple Family Oh, I'm probably not here much anymore.Jason Cartwright @jasoncartwright
2K Followers 2K Following 👋 I run @GiveFoodCharity. Investing, travel, old school mediocre coding.Larry Masinter @masinter
1K Followers 669 Following "dino web standards geek" (URLs, HTTP, HTCPCP) returning to https://t.co/rXUtsmAT2i roots.Weihang Lo 𓃺𓃹 @weihanglo
878 Followers 593 Following 📦 Cargo worker at home 🐙 https://t.co/W8k3IZXAwBAaron Boodman @aboodman
6K Followers 908 Following Founder @rocicorp. Building @replicache and @hello_reflect, raising two great kids, and trying to be a better person. Also found at https://t.co/4ARrglK8Kc.William Rudenmalm🇺.. @w_hgm
5K Followers 1K Following Writing Rust 🦀 - ml, comp vision + llms - work https://t.co/aH07o0rjfk https://t.co/pPOeAbtxtxAngelo Carusone @GoAngelo
72K Followers 11K Following President & CEO of @mmfa; #DumpTrump organizer. Formerly @StopBeck. Onward! (Tweets are mine alone)Zeno Rocha @zenorocha
46K Followers 988 Following Founder & CEO at https://t.co/VDv4R70kzh (YC W23) 💌 https://t.co/zOO7YYd3tO 🧛♂️ https://t.co/YTFlHxxRFaDaniel Harvey @yevrahjleinad
355 Followers 1K Following Computer user in London. All opinions sadly my own. He/him.Binary Golf Associati.. @binarygolf
1K Followers 39 Following Binary Golf Grand Prix ; Annual Small File Competition ; Less Is More ; #BGGP4 begins June 23th 2023, ends August 25th 2023@_wilfredh We do this in Dart, relevant code of how we represent interface types: - Compile time: github.com/dart-lang/sdk/… - Runtime: github.com/dart-lang/sdk/… They have the same structure (class + type arguments), but in runtime you can do with a simpler type representation for the types,
@_wilfredh github.com/ocaml/ocaml/pu… should list most points
@_wilfredh I can speculate: - constructors always inlined - never dispatching constructor calls by function pointer allowing local reasoning about the value constructed
@_wilfredh That's how pretty much everybody does it these days. Asciidoc is another sensible choice.
@_wilfredh We saw a modest speed up in Ruff too for some hot paths.
the reason naming things is the hardest problem "in computer science" is that it's not a computer science problem, it's a psychosocial summoning ceremony whose aim is to conjure exactly the desired concepts in other people's minds
Sometimes I push a PR or commit that makes me think, if the reviewer is using difftastic it will be very clear, but if they are using a regular diff viewer they will be like wtf
✨ Programming langs & Open Source - based on GH search Repository created after:2020 Stars: Greater than 1000 1. Python - 2.2k 2. Javascript - 764 3. Go - 657 4. Rust - 521 5. C++ - 422 6. Java - 308 7. C - 279 8. C# - 258 9. Kotlin - 190 10. Swift - 137 #programming
"Sell a result, not a tool." Headlines should be a promise around the result the customer wants and that I think we can actually deliver. NOT about what the software simply does.
@_wilfredh Type systems are too effective! And this is why we only have clunky and bad ones. No need to go 100% with the solution.
Haskell is an open source language! GHC is accepting contributions! You can just propose improvements and fix things 😄
@welltypedwitch @Idonbelonghere @Las______ @yawaramin @BartoszMilewski We do this in CSI: Haskell, but we let you control the length of the trace. We found that a length of around 500 was enough to find 90% of the bug causing locations! Soon to be integrated into GHC proper :)
@_wilfredh This is the feature I mentioned to you on that PR a while back; I feel like it might be a good fit for difftastic.
@_wilfredh @sanityinc Assuming this is it: github.com/nlewo/comin
@sullyj3 @_wilfredh And "comin" lets you set a machine to update itself from a branch, which is a nice workflow. GitHub.com/lewo/comin
@sashopopov Amazing tool, but I had a few problems to make it default for git that were related to some ENV variables. But yeah, I would never come back to regular diffs.
Fiddled with Difftastic yesterday. It's quite cool structural diff tool, meaning that it can filter a lot of the meaningless noise away that git default diffing does. #git #coding github.com/Wilfred/diffta…
How do AI code generators effect students? New blog post with @MajeedKazemi summarizing our recent research. austinhenley.com/blog/learningw…
Thank you :D love it
I've released difftastic 0.57! In this release: * A bunch of improvements around detection and display of binary files. * Fixed some diffing issues with (ironically) text files. * Better diff results for Scheme. github.com/Wilfred/diffta…