TempleOS and HolyC (Again. I think there's already a thread. Oh well.)



  • Continuing the discussion from 🔗 Quick links thread:

    @cartman82 said:

    ##A Constructive Look at TempleOS

    Guy goes through templeOS and points out the good / interesting things.

    Ok this deserves a topic.

    Booting Windows this morning, I can’t help but notice how long it takes. And even when Windows ‘appears’ to have booted, it doesn’t actually become properly usable for perhaps another minute. If you listen, you can spot the point at which usability is declared because Windows plays the startup sound to indicate it.

    How is this possible?

    How is a guy who's Windows isn't usable on a 2015 computer (and note this article is recent) for "perhaps another minute" qualified to talk to us about an OS? He can't even get the most popular OS in the world running WITHIN AN ORDER OF MAGNITUDE of its normal performance!!! 8-year-olds have computers working better than his.

    It raises an interesting challenge for other OSs – why do shells have to be pure text? Why can’t we have a multimedia shell?

    Or code files for that matter. It always annoys me that I can't just put the flowchart of the function I'm working on there in the code file right next to the function. Fucking Microsoft Word has been able to do that since 1992, and Visual Studio can't in 2015?

    (Of course we all know the answer: the kind of people who build programming tools live in 1982 and are suspicious of anything that didn't exist in 1982 and refuse to adopt it.)

    You don’t need to run a rebuild process, just compile the file and the documentation updates.

    You don't need to rebuild, just rebuild! ... oh wait.

    Given a class, you can enumerate every member to get its name, offset, etc. What’s surprising is that you can also attach any custom metadata to any class member at compile time. Example uses for this might include storing its default value, min/max range, printf format string. Does your language support this?

    No; it sounds like an extremely bad idea.


    That all said, I agree with a lot of the points in the article, some of the stuff in TempleOS is actually really slick.


  • ♿ (Parody)


  • ♿ (Parody)

    @blakeyrat said:

    (Of course we all know the answer: the kind of people who build programming tools live in 1982 and are suspicious of anything that didn't exist in 1982 and refuse to adopt it.)

    Features start at -100 and this one never comes close to positive territory.



  • @blakeyrat said:

    No; it sounds like an extremely bad idea.

    Go uses it for various forms of encoding. For example, you can say `json:"foo,omitempty"` after some field's type and it'll name it "foo" in JSON and skip it entirely if it has a zero value.



  • @ben_lubar said:

    Go uses it for various forms of encoding. For example, you can say json:"foo,omitempty" after some field's type and it'll name it "foo" in JSON and skip it entirely if it has a zero value.

    Well C# has attributes, too. I actually think I simply misread him or had a brain-fart and read it as "run time" instead of "compile time".

    Then the question becomes, what shitty-ass language is Mr. Slow-Windows using where this is new and surprising?



  • C, presumably. Also, Discourse seems to have fucked up the code segment in the quote.



  • @boomzilla said:

    Features start at -100 and this one never comes close to positive territory.

    I'm guessing it's more a case of:

    1. Nobody's ever brought it up, because 1982 or

    2. When someone brought it up, it was instantly pissed and shat on by the other 1982 people on the team

    Putting a flowchart in a code file is a fuckload more useful than a lot of other "-100 point" features Visual Studio has.



  • Why do you need a flowchart in your code and not in some other file in the same folder? Does the compiler understand your flowchart?



  • So he can't get Windows working and he loves C.

    Basically, I'd rather have insane schizophrenic guy tell me about OSes than this idiot reviewer. "God told me to make it 640x480" makes more sense than this article.



  • @ben_lubar said:

    Why do you need a flowchart in your code and not in some other file in the same folder?

    Convenience.

    @ben_lubar said:

    Does the compiler understand your flowchart?

    C# allows a lot of shit in code files that the compiler doesn't understand and, in fact, strips out instantly. They're called "comments". You may have heard of them.


  • ♿ (Parody)

    @blakeyrat said:

    >Booting Windows this morning, I can’t help but notice how long it takes. And even when Windows ‘appears’ to have booted, it doesn’t actually become properly usable for perhaps another minute. If you listen, you can spot the point at which usability is declared because Windows plays the startup sound to indicate it.

    How is this possible?

    I think it happens if you turn off the...erm...caching or whatever. I forget what it's called, but when you shut down, Windows does something weird that dramatically speeds up boot times. The downside is that the NTFS partition is in a weird state where not everything got written normally. Or something like that.

    I forget the details, but the bottom line is that it fucks you over if you dual boot. I basically agree with him that it always seems like Windows takes a relatively long time to boot (though I haven't timed it or anything), but I know I have that feature turned off.



  • @blakeyrat said:

    Or code files for that matter. It always annoys me that I can't just put the flowchart of the function I'm working on there in the code file right next to the function. Fucking Microsoft Word has been able to do that since 1992, and Visual Studio can't in 2015?

    (Of course we all know the answer: the kind of people who build programming tools live in 1982 and are suspicious of anything that didn't exist in 1982 and refuse to adopt it.)

    You'll be happy to learn that swift 2.0 will allow markdown comments with smart links to other parts of code. Yay!



  • @cartman82 said:

    You'll be happy to learn that swift 2.0 will allow markdown comments with smart links to other parts of code. Yay!

    How does that help if I want an embedded image?

    It's better than nothing I guess, a step in the right direction.



  • @boomzilla said:

    I think it happens if you turn off the...erm...caching or whatever.

    Huh? Hibernation?

    @boomzilla said:

    I forget what it's called, but when you shut down, Windows does something weird that dramatically speeds up boot times.

    If you're referring to Hibernation, Windows doesn't do that on shut down. Only if your computer shuts itself down as a result of being asleep a long time.

    @boomzilla said:

    I forget the details, but the bottom line is that it fucks you over if you dual boot.

    So don't dual boot. "Let's ruin Windows so we can also run a much shittier OS on the same machine! THIS IS A GOOD IDEA I AM HAVING."



  • I have no idea how long it takes Linux to boot because I haven't had to reboot my Linux computer for over 200 days, but my Windows computer usually takes about 5 minutes to start up. My dad's Windows laptop takes about 10 minutes to get to the desktop followed by 5 minutes of various "open on startup" programs popping up, and during that time anything you try to do gets queued for after the "open at startup" programs are all running.



  • @ben_lubar said:

    but my Windows computer usually takes about 5 minutes to start up.

    What did you do to it?

    @ben_lubar said:

    My dad's Windows laptop takes about 10 minutes to get to the desktop followed by 5 minutes of various "open on startup" programs popping up, and during that time anything you try to do gets queued for after the "open at startup" programs are all running.

    Why doesn't he fix it?

    What the fuck is wrong with you people?


  • ♿ (Parody)

    @blakeyrat said:

    If you're referring to Hibernation, Windows doesn't do that on shut down. Only if your computer shuts itself down as a result of being asleep a long time.

    It's sort of like hibernation, I think.

    @blakeyrat said:

    So don't dual boot.

    I've thought about that a lot, but I hate to erase my copy of Windows since I already paid for it.



  • @boomzilla said:

    It's sort of like hibernation, I think.

    Well if you ever figure out what the fuck you're talking about, let me know.

    No wait.

    I meant to say, "never talk to me ever again." Dunno how I typoed that.


  • ♿ (Parody)

    @blakeyrat said:

    Well if you ever figure out what the fuck you're talking about, let me know.

    Ah...they call it "Fast Boot."

    @blakeyrat said:

    I meant to say, "never talk to me ever again." Dunno how I typoed that.

    Sure thing. I'll just type into this box on my screen instead.


  • Fake News

    @blakeyrat said:

    @boomzilla said:
    It's sort of like hibernation, I think.

    Well if you ever figure out what the fuck you're talking about, let me know.


    Here's an MSDN article about the difference between Fast Startup and Hibernation (for drivers).

    The first few paragraphs should tell you what it's all about.



  • I followed this link to this seizure-inducing demo video and was immediately on the floor foaming at the mouth.

    All that marquee text aaaAAAAaaaaAAAAaaaaAAAAaaaaAAAAaaaaAAAA!

    https://www.youtube.com/watch?v=0-dVp542XGk



  • Oh right I do remember reading about that. It's like half-hiberation, it loads in all the system state but not the application state.



  • :wtf: do you want circles on your goddamn screen?!



  • @blakeyrat said:

    Given a class, you can enumerate every member to get its name, offset, etc. What’s surprising is that you can also attach any custom metadata to any class member at compile time. Example uses for this might include storing its default value, min/max range, printf format string. Does your language support this?

    Isn't that what you can do in Python? You can access everything a class has, at runtime, including the docstrings. You can even attach an "annotation" to every function parameter, which can be an arbitrary Python object, and can be used for any purpose you like.

    I guess C lovers are just so impressed that this isn't 45 years ago and we can afford a few extra bytes of memory.



  • Holy crap, how does anyone use that interface?


  • Discourse touched me in a no-no place

    @blakeyrat said:

    C# allows a lot of shit in code files that the compiler doesn't understand and, in fact, strips out instantly. They're called "comments". You may have heard of them.

    Parsing comments out of a text file and parsing image data out of a no-long-a-text-file are probably not quite the same thing.

    I'm not saying that I disagree with the idea, just that it's not as easy as as PHB[1] might think.

    [1] Pointy-Haired Boss, in case you're some kid of non-Dilbert-reading weirdo.



  • @blakeyrat said:

    What did you do to it?

    Remember, this is Milwaukee PC sales territory, so it's likely a 2003-vintage eMachines designed for Windows ME with more shovelware than the Jones Island Water Reclamation Facility.


  • Discourse touched me in a no-no place

    @boomzilla said:

    I basically agree with him that it always seems like Windows takes a relatively long time to boot (though I haven't timed it or anything), but I know I have that feature turned off.

    Meh. If you're using a fast modern computer (e.g., core i5 with SSD + UEFI) and not messign around with dual-boot or disabling caching, you have a desktop in seconds (and I don't mean something cute like forgetting to say "hundreds of" them.)


  • Discourse touched me in a no-no place

    @ben_lubar said:

    but my Windows computer usually takes about 5 minutes to start up.

    Yeah, well, what's the specs, and how many IE toolbars are you running? Ditto for your dad.


  • Discourse touched me in a no-no place

    @blakeyrat said:

    What the fuck is wrong with you people?

    Well, their experience is skewed by MilwaukeePC internet, so, what can you expect?



  • The OS has one user.



  • @FrostCat said:

    Parsing comments out of a text file and parsing image data out of a no-long-a-text-file are probably not quite the same thing.

    There's no law that says the images have to be in the same file. The file could have a comment marker saying "insert image X at line Y" that the IDE doesn't show, and the image could be a separate file.

    Engage your brain for about 48 nanoseconds and think of how this feature could work. Or is your brain to ossified for any new ideas or creativity to exist in it?



  • One thing I like about that article is how he's really impressed by something you can do by following a guide on the clisp site to replace your system shell with clisp. Which is probably a better shell than any C variant.


  • ♿ (Parody)

    @FrostCat said:

    Meh. If you're using a fast modern computer (e.g., core i5 with SSD + UEFI) and not messign around with dual-boot or disabling caching, you have a desktop in seconds (and I don't mean something cute like forgetting to say "hundreds of" them.)

    I have an i7 but it's a mechanical drive, which obviously slows stuff down compared to SSD. Still, from when I first got the machine, the difference with Fast Boot was noticeable. What I recall was that when I wrote something to the NTFS partition while not using Windows, when I booted up Windows the data wasn't there.

    Since I rarely boot Windows, having no worries about data integrity is way more important than a few minutes a year.


  • FoxDev

    @ben_lubar said:

    I have no idea how long it takes Linux to boot because I haven't had to reboot my Linux computer for over 200 days, but my Windows computer usually takes about 5 minutes to start up. My dad's Windows laptop takes about 10 minutes to get to the desktop followed by 5 minutes of various "open on startup" programs popping up, and during that time anything you try to do gets queued for after the "open at startup" programs are all running.

    :wtf:

    my windows desktop takes ~20 seconds to go from cold off to ready to go, and 15 of those seconds are waiting for the BIOS to hand off control to the bootloader...

    even adjusting for lesser specs any windows computer that takes more than two minutes (and i'm being generous) to boot to a usable condition needs a nuke and repave because there's too much shovelware there to get rid of without a good scrubbing by DBAN.



  • The numbers are so ridiculous I'm starting to wonder if Ben L has learned the joys of trolling.


  • Discourse touched me in a no-no place

    @blakeyrat said:

    There's no law that says the images have to be in the same file. The file could have a comment marker saying "insert image X at line Y" that the IDE doesn't show, and the image could be a separate file.

    Engage your brain for about 48 nanoseconds and think of how this feature could work. Or is your brain to ossified for any new ideas or creativity to exist in it?

    You big dummy. I just said it wasn't as easy, not that it couldn't--or shouldn't--be done. Apparently your reading comprehension is located in your left hand.



  • It used to be that way back in the days before XP, but now we're even past the 8 era, where a typical laptop is running when you press power.


  • Discourse touched me in a no-no place

    @blakeyrat said:

    The numbers are so ridiculous I'm starting to wonder if Ben L has learned the joys of trolling in a manner I am capable of recognizing.

    FTFY--he's long demonstrated an ability to troll.


  • ♿ (Parody)

    @blakeyrat said:

    Engage your brain for about 48 nanoseconds and think of how this feature could work.

    This sort of thinking is why the feature never reaches positive territory.



  • It's not even not easy, it's fucking trivial. That's what I was pointing out.

    Hell, I could write a VS plug-in to do it (assuming their rich text control has the capability of displaying bitmaps, which it probably does since it can display that "document preview in scroll bar" thing.)

    @boomzilla said:

    This sort of thinking is why the feature never reaches positive territory.

    Sadly you are probably correct. Like I said, even daring to suggest software development progress past 1982 levels is enough for knee-jerk negative reactions.


  • ♿ (Parody)

    @blakeyrat said:

    It's not even not easy, it's fucking trivial. That's what I was pointing out.

    I look forward to all the ways it breaks in ways similar to the sort of rants you have about other software.



  • This is true for every editor except Emacs, they have never met a feature they didn't like.



  • @blakeyrat said:

    Hell, I could write a VS plug-in to do it (assuming their rich text control has the capability of displaying bitmaps, which it probably does since it can display that "document preview in scroll bar" thing.)

    I use a plugin that replaces the text background color with an image of a chalkboard, and this is all WPF, so I have no doubt you could get it working. If you could do so and get people using it, then put it on uservoice, you might even be successful. It'd be up there with elastic tabstops in 'cool ideas no one ever does' - except AlwaysAligned is a plugin now. A good one, apart from using the windows registry for its license keys. Like, 'run this .reg file' level.


  • Discourse touched me in a no-no place

    @blakeyrat said:

    Hell, I could write a VS plug-in to do it

    Sure, you say that, but when pressed you always give the excuse it's not your job. Expend your mind for 23 milliseconds and try actually doing it instead of whining about it.



  • It's not my job. I wouldn't even derive much value from it, since there's no way the 1982 knee-jerkers I work with would make it a standard part of the company Visual Studio configuration, so I'd only have access to it on my hobby projects where, by and large, I'm not coding from flowcharts.

    It doesn't change the fact that it's a giant WTF that this doesn't exist.


  • Discourse touched me in a no-no place

    @blakeyrat said:

    It's not my job.

    And apparently it's not anybody's job, either. So enjoy continuing to be part of the problem.


  • ♿ (Parody)

    @blakeyrat said:

    It's not my job

    And it's probably occurring to you how it will be difficult not to make it a massive WTF.



  • For a while, they were doing that canvas thing inspired by codebubbles, but then they turned it into just a debugger feature, removing everything good about it. But they also seem to be lowering the level of the graphing features so more people will have access to them, so you'd have a bigger chance of success now than ever before.

    I just want elastic tabstops to become standard. They make more sense than every other alignment system. Too bad the plugin is buggy currently, because it feels really nice when it's implemented right.



  • @FrostCat said:

    And apparently it's not anybody's job, either.

    Ah, but I enjoy complaining. Thinking about it, I probably derive more value from bitching about lacking the feature than I would from having the feature.


Log in to reply