Show HN: TRUST – Coding Rust like it's 1989

(github.com)

144 points | by wojtczyk 1 day ago

28 comments

  • GuB-42 23 hours ago
    Looking at this makes me nostalgic in a way the author probably hasn't intended.

    Rust is notorious for its slow compile times, while Turbo Pascal was known to be blazingly fast. And the debugger, one of the most important part of the experience is "Not implemented". Dressing it as a 1989 IDE makes me painfully aware of what we have lost. Despite running on hardware that were orders of magnitudes slower than today, software used to be more responsive.

    By "more responsive" I mean that while modern systems are excellent at batch processing, latency is often not great, and because so much happens in parallel, also confusing.

    • pjmlp 21 hours ago
      Some of us still haven't lost it thanks to Delphi, C++ Builder, .NET or even Java.

      However they aren't fashionable in the days of Electron and CLI nostalgia.

      So you end up with Go on vim, instead of FreePascal on Lazarus.

      • cwnyth 15 hours ago
        Heck, some of us haven't even given up on Perl.
        • mpyne 14 hours ago
          I don't use it very often anymore (except for oneliners or simple one-offs) but I still like it!
        • pjmlp 7 hours ago
          Quite useful still.
    • anta40 21 hours ago
      >> Rust is notorious for its slow compile times

      Don't forget Haskell. And what's other... C++, OCaml, etc?

      I guess a language with complex/complicated design is difficult to be compiled "blazing fast"

      • GuB-42 17 hours ago
        Rust is not alone to compile slowly. And yes, there are reasons, but if you want to pick a language to fit the Turbo Pascal vibes, that's not it.

        Zig and Go would probably be better modern languages for this. Also "Turbo Zig" and "Turbo Go" sound cool, "Trust" sounds too corporate :)

      • pjmlp 15 hours ago
        Not really, because contrary to Rust, Haskell, C++ and OCaml have faster alternatives, even though some people decide to ignore them to their own pain.

        Haskell has GHCi, where you can pre-compile modules and play around in the repl with code that is more in flow.

        OCaml has a bytecode interpreter, and a repl, thus you can compile only what you need, and do the full compilation for proper releases.

        C++, well, yes it is slow, if you don't make use of binary libraries, external templates, incremental compilation and incremental linking, parallel builds, hot code reloading (VC++ and Live++), or REPLs (ROOT/cling, Clang-Repl).

      • wojtczyk 20 hours ago
        Right, we can appreciate a lot of the heavy weight lifting by the compiler or blazing fast translations... in the latter case an assembler would do
    • wojtczyk 22 hours ago
      It was intended to evoke emotions. I really consider this more of an art project than a developer tool.

      I will see about the debugger.

    • TacticalCoder 11 hours ago
      There are hardware reasons too, related to polling frequencies etc.

      Great article for those interested in the matter:

      https://danluu.com/input-lag/

      • wojtczyk 9 hours ago
        Great article. Thanks for sharing.
  • pjmlp 23 hours ago
    Well not quite, unfortunely Rust still has a bit to catch up with 1989, it isn't only the Turbo Vision inspired IDE.

    https://ia801901.us.archive.org/5/items/TurboPascal55/Antiqu...

    > Fast! Compiles 34, 000 lines of code per minute

    https://archive.org/details/bitsavers_borlandtur5.5Brochure1...

    Measured on a a IBM PS/2 Model 60, meaning an Intel 80286 running at 10 MHz with 640 KB for MS-DOS, up to 8 MB depending on extenders and HMA configurations.

    https://en.wikipedia.org/wiki/IBM_PS/2_Model_60

    And if you feel using the language complexity excuse for 2026 hardware, see OCaml, Delphi, D, or C# AOT.

    • wojtczyk 22 hours ago
      Thank you for the references!
  • nazgulsenpai 18 hours ago
    The blue CRT glow of Turbo C++ / QBasic 4.5 IDE at 12 AM when I've snuck up in the middle of the night to poke around on the family computer on a school night when I was ~10 years old... I love this.
    • wojtczyk 17 hours ago
      Happy to hear that. Thank you!
    • septune 14 hours ago
      was here, done that !
  • awhenderson 1 day ago
    I haven't felt a lot of desire to code in Rust but I do now! Absolutely applaud this project - it's completely tugged on the retro nostalgia strings for my Turbo Pascal days. Also one of the reasons I enjoy the previously HN featured Microsoft Edit project immensely - https://github.com/microsoft/edit. Thank you OP
    • wojtczyk 22 hours ago
      Thank you! I appreciate your feedback
  • rob74 1 day ago
    Cool! I assume TRUST stands for "Turbo Rust"? If yes, maybe it would be worth mentioning that in the readme. I doubt that Embarcadero Technologies (the current owners of the Delphi and C++ Builder IDEs, and probably also the owners of other former Borland trademarks) would mind - but then again, it doesn't hurt to stay on the safe side...
    • wojtczyk 22 hours ago
      I can neither confirm nor deny what the T stands for. However a quick research showed some trademarks are current and renewed.
    • weinzierl 1 day ago
      Random aside: Back in the day Microsoft used the "Quick" prefix and Borland used "Turbo". I am waiting for a QRUST.
    • monadgonad 1 day ago
      Staying on the safe side would be not confirming whether it stands for Turbo Rust or not. "You might very well think that; I couldn't possibly comment."
  • doubtfuluser 16 hours ago
    Thank you for that - I’m definitely going to look into it. I realize that I lost the fun in coding. I’m in a different career stage now as well, but just seeing this reminded me of how I started a long time ago implementing snake, learning about graphics mode, double buffering / page flipping etc.

    Everything felt exciting and so close to really understanding what’s going on. And just seeing the blue text interface reminded me of how much fun that was…

    • wojtczyk 15 hours ago
      I am glad to hear how the project resonates with you and other people here. I was reading an article about coding in the 90s and thought, the best time I had was on our first computer. Starting out with Basic, Pascal, Assembly and C++. Text mode, VGA mode, INT 10h ... what fun
  • 0rbiter 22 hours ago
    The window screenshots are clearly from macOS 26, the rounded corners look so broken. If Rust ran in DosBox, we would have the perfect 1989 emulator.
    • wojtczyk 20 hours ago
      Thanks for the feedback, maybe I'll redo the screenshots
      • joshka 19 hours ago
        I recommend VHS generally for these (we use them for all the ratatui screenshots generally). I'm also playing around with doing a rust version of this (https://www.joshka.net/betamax/)
        • wojtczyk 17 hours ago
          Thanks, I was looking into a terminal recorder last night, but then it was kind of late. I will look into VHS.
  • segmondy 12 hours ago
    I want an editor like this with proper vim support. Anyone know of any?
  • shreyas_p_238 5 hours ago
    1989, this was the style of ide my school used to teach me C in 2015, so many frustrations, that turbo C was very very unpleseant to work with
  • 3836293648 22 hours ago
    This needs to have DOS builds available. Is it performant enough for 90s hardware? I know the rust compiler itself isn't really.
  • RivoLink 1 hour ago
    Love it, congrats.
  • anta40 21 hours ago
    Just noticed in cannot build a standalone Rust source file

    "error: could not find 'Cargo.toml'"

    I assume first need to create a project by "cargo new" ...?

    Anyway, love the good ol' Turbo Pascal 7 Reference. Haven't touch it for more than 1 decade.

    • wojtczyk 21 hours ago
      Thanks for letting me know. I shall add that.
  • eithed 1 day ago
    Ah, Norton Commander takes me back
    • wojtczyk 22 hours ago
      Same here. I need to fire up my PC AT again.
  • joshka 19 hours ago
    Ha - I see it's Ratatui based. Nice work there :D
    • wojtczyk 19 hours ago
      Thank you! Ratatui was super helpful
  • kaant 1 day ago
    Because Rust deserves a blue-screen IDE from the olden days and someone had to do this...
    • wojtczyk 22 hours ago
      Thank you for noticing! :D
  • forinti 15 hours ago
    If only it would fit on a floppy.
    • wojtczyk 14 hours ago
      Well, in release mode it is currently 1048KB. Works for a 3.2" HD
  • WiSaGaN 1 day ago
    Maybe I should start a project rewriting pctools 5.0 in rust!
    • wojtczyk 22 hours ago
      I would love to see that.
  • HackerThemAll 13 hours ago
    Turbo Vision library, which apparently inspired TRust, had a great object model, in which you could derive built-in classes implementing controls, windows, validators etc., extend them by adding custom functionalities and seamlessly plug them into the system. Imagine extending the built-in TEditor class to handle syntax highlighting, or extending TDialog to handle complex multi-tab option dialogs.

    To beat 1989 and Turbo Pascal, TRust must do that (perhaps the Rust's way).

  • vsgherzi 1 day ago
    Honestly the experience looks pretty nice. Which is crazy to say for such an old style of program but I kind of like it. Perhaps just nostalgia for a time I never got your experience.
    • 2ndorderthought 1 day ago
      I'm not mad at this at all. It probably runs with like 20kb if RAM.

      I realize the author is probably just having fun, but if a few modern features added to this and I would probably try it.

      Multi cursor, a little terminal window, some way to do code hints or intelligence. This would be a dream boat lol

      • staplung 22 hours ago
        Have you tried Fresh? Has everything you listed and more

        https://getfresh.dev/

      • wojtczyk 22 hours ago
        Thank you! I may build this out further. I just wanted to get started and feel like back then; share and see what happens. If I am the only one who is excited about this.
      • boxed 1 day ago
        https://github.com/boxed/TurboKod

        I started this just for the lulz, but now I've got:

        copy/paste/undo

        multiple cursors

        debuggers

        syntax highlighting (even nested languages with jetbrains style comments!)

        find-in-files

        integrated documentation

        integrated git client (roughly modeled after lazygit)

        spell checking

        and tons more that I can't even remember

        • 2ndorderthought 23 hours ago
          It's pretty awesome and inspires me more than lulz. Highly successful art project if you ask me
          • boxed 23 hours ago
            Thanks.

            I'm thinking it could be a sort of reference implementation to build your own custom IDE the way you like it. I'm going to attempt to get TurboKod to be good enough to be my daily driver, we'll see how it goes.

        • wojtczyk 22 hours ago
          OP here. Thanks for sharing! I love your project. Looks very polished and true to the experience.

          And yes, TRUST got started for the lulz and feels.

    • q3k 1 day ago
      A year or so ago I spent half a day writing some Rust on an actual DEC glass teletype (VT520) connected to a Debian box. I used vim and shell job control (^Z, jobs, fg, etc.) to switch between tooling and a persistent text editor. It made me feel things.
      • wojtczyk 22 hours ago
        I can imagine. Thank you for sharing! I just saw one in the Computer History Museum.
    • wojtczyk 22 hours ago
      Thank you! It was meant to evoke emotions.
  • sourcegrift 1 day ago
    Embed nvim in the right pane!
    • wojtczyk 22 hours ago
      Thank you for the feedback. I may actually add that option.
  • AbuAssar 1 day ago
    nice (and clever) name!
    • ahartmetz 21 hours ago
      I actually expected an unsafe-only Rust because of the name and the "archaic" date (of course, "safe" languages did exist at the time, if not low-level and safe ones).

      Still, cool project.

      • wojtczyk 20 hours ago
        unsafe-only Rust ... good idea!
    • wojtczyk 22 hours ago
      Thank you!
  • whalesalad 14 hours ago
    My first experience with programming was QBASIC in like 1997 - looked just like this. Minus the anti-aliased fonts, and a far lower resolution.
    • vunderba 14 hours ago
      To me it looks more like the early versions of Borland C++ for MS-DOS but yes similar TUIs.

      https://imgur.com/a/qspuIBj

    • wojtczyk 13 hours ago
      I very much remember QBASIC. It created a lot of joy for me. But I went for something slightly different here.
  • rockscy 5 hours ago
    [dead]
  • handsometong 10 hours ago
    [dead]
  • noborutakahashi 12 hours ago
    [dead]
  • applex1025 10 hours ago
    [dead]
  • Nation3Labs 11 hours ago
    [dead]
  • vladsiu 7 hours ago
    [dead]