-
https://github.com/facebook/buck2/tree/main/examples/with_pr...
More "real world" examples are dtolnay's CXX for Rust and C++ interop:
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
I would say the compiler explorer[0] fits the definition perfectly. It may seem like a straightforward piece of software, but it has immensely changed the way people discuss and share knowledge around compilers and performance optimization.
I regularly feel the impact on the quality of forum discussions. There's a lot less speculation about if "call X gets inlined", or "Y gets vectorized". Bold claims can be supported or disproven quickly by sharing a link.
And then you have tools like llvm-mca[1] or uiCA[2], if you don't mind going into the weeds.
[0] https://godbolt.org/
[1] https://llvm.org/docs/CommandGuide/llvm-mca.html
[2] https://uica.uops.info/
-
pharo
Pharo is a dynamic reflective pure object-oriented language supporting live programming inspired by Smalltalk.
Smalltalk and as a particular case Pharo is an example of this for me. (https://pharo.org/). When I was in uni a paper that I always came back to was Licklider's 1960s paper on human-computer symbiosis (https://worrydream.com/refs/Licklider_1960_-_Man-Computer_Sy...)
"[...]to enable men and computers to cooperate in making decisions and controlling complex situations without inflexible dependence on predetermined programs."
Experimenting with Smalltalk (and also with Clojure and Emacs) was one of the things to me that genuinely felt like that vision of programs as living, interactive, organic things rather than the formulaic, static and low level programming that I was used to learning.
-
nix-direnv
A fast, persistent use_nix/use_flake implementation for direnv [maintainer=@Mic92 / @bbenne10]
-
-
Yeah, one of the best programmers I've ever worked with would launch Epsilon (a commercial emacs style editor for various OSs) each morning and then do _all_ of his work from it.
The closest I come to that is messing emacs keyboard shortcuts when I'm not using a Mac.
I really wish that there were more programs which completely re-examined all aspects of various tasks _and_ incorporated scripting in a fashion which allows folks to take advantage of it.
Some of the apps I would consider if putting together such a list:
- LyX --- billed as a "What You See is What You Mean" Document Processor, v2.4 is looking to be quite promising...
- TeXshop/TeXstudio --- the former in particular is _very_ nice for folks who aren't able to devote the effort to learning emacs
- pyspread --- have a spreadsheet where every cell can contain a Python program or SVG graphic is _way_ cool --- I just wish it was as flexible as Lotus Improv/Quantrix Financial Modeler
- Solvespace --- I wish I could do better with 3D --- usually I fall back to OpenSCAD, esp. now that there's a Python-enabled version: https://pythonscad.org/ though I often use: https://github.com/derkork/openscad-graph-editor
- TikzEdt/IPE --- I really wish there was a nice graphical front-end for METAPOST/METAFONT (or that the graphical front-end for Asymptote was more flexible)
On the gripping hand, one has to give props to the Krita folks for making scripting a first-class citizen: https://scripting.krita.org/lessons/introduction
-
I felt that way about node and yet node lead to an explosion of poorly written and designed packages and constant notifications about needing to upgrade project X because it depended on Y which depends on Z and Z has some DoS issue if you pass the wrong regex to it.
I don't feel confident that rust won't go the same way when I tried to update the rust docs (https://github.com/rust-lang/docs.rs)
cargo build
-
InfluxDB
InfluxDB high-performance time series database. Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.
-
I really like the buku terminal bookmark manager. https://github.com/jarun/buku I like that I can just `man buku` when I don't understand something and I can actually find the answer I'm looking for.
-
lazygit (https://github.com/jesseduffield/lazygit) is enlightenmentware for me. It helps me navigate Git commands I forget all the time, like using the reflog to undo things, custom patches, or rebase --onto.
It makes working with Git a lot more fun, and I giggle like a little child whenever one of the weirder things work out again.
-
https://github.com/dtolnay/cxx
and my own ones (sorry to again link these, but I do not know of any others):
-
Cxx-Buck2-vcpkg-Examples
Discontinued A C++ example repository using Buck 2 with vcpkg (the C++ package manager) and scripts to generate a compile-commands.json.
-
Cxx-Buck2-vcpkg-Example
Discontinued [GET https://api.github.com/repos/Release-Candidate/Cxx-Buck2-vcpkg-Example: 404 - Not Found // See: https://docs.github.com/rest/repos/repos#get-a-repository]
-
Cxx-Buck2-Conan-Examples
Discontinued A C++ example repository using Buck 2 with Conan (the C++ package manager) and scripts to generate a compile-commands.json.
-
Cxx-Buck2-Conan-Example
Discontinued [GET https://api.github.com/repos/Release-Candidate/Cxx-Buck2-Conan-Example: 404 - Not Found // See: https://docs.github.com/rest/repos/repos#get-a-repository]
-
OCaml-Buck-2-Examples
Discontinued This contains documentation and examples on how to use Buck 2 to build OCaml projects.
-
I have a couple of these to add as well:
VCVRack - simply one of the most mind-expanding things a synthesizer-nerd can play with. (https://vcvrack.com/)
ZynthianOS - another example of a simple software solution to a problem nobody realized existed, opening the door to an absolutely astonishing array of Audio processing tools (https://zynthian.org/)
-
I have a couple of these to add as well:
VCVRack - simply one of the most mind-expanding things a synthesizer-nerd can play with. (https://vcvrack.com/)
ZynthianOS - another example of a simple software solution to a problem nobody realized existed, opening the door to an absolutely astonishing array of Audio processing tools (https://zynthian.org/)
-
-
In my case Cycle JS (https://cycle.js.org) was very enlightenment and pedagogic. It make me realize that software is always and only a matter of data transformation. And those pure data transformations can be keep separated and decoupled from "side effects".
-
Rust, the language itself depends on 220 packages: https://github.com/rust-lang/rust/blob/e8753914580fb42554a79...
If you trust nobody, it is hard to use anything.
But about your second note, (environment, mismatched dependencies), I would argue that Rust provides the best tooling to solve or identify issues on that area.
-
logseq
A local-first, non-linear, outliner notebook for organizing and sharing your personal knowledge base. Use it to organize your todo list, to write your journals, or to record your unique life.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives