The Thirty Million Line Problem

There is 30 million lines of software between the hardware and your programs. All these layers slow everything down and make it buggy and unreliable. The reason it's there is because hardware has gotten to complex and varied. We need to go back to the DOS days where the OS would just launch a program, or amiga where every single game was a bootable disk.

tldr: youtube.com/watch?v=kZRE7HIO3vk

Attached: screenshot11.png (843x474, 122.53K)

Other urls found in this thread:

openhub.net/p/wordpress/analyses/latest/languages_summary
people.eecs.berkeley.edu/~kubitron/cs252/handouts/papers/symbolics.pdf
cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2018-8897
franz.com/success/customer_apps/data_mining/itastory.lhtml
z505.com/cgi-bin/qkcont/qkcont.cgi?p=It Requires 3300MHZ For Back Button
gng.z505.com/
twitter.com/SFWRedditGifs

way ahead of ya

That's a fallacious statement to say the least. Are you seriously implying all 30 million lines of code are going to be loaded into memory at once?

yes

[citation needed]

30M is a very conservative lower bound, it's actually more like 55M.

Attached: screenshot12.png (849x480, 231.73K)

Commodore 64 is where it's at.

Attached: TAD.png (500x500, 328.19K)

Say the average line of code is translated into 10 bytes worth of instructions. That's about 300 MB of instructions, which is not ridiculous for modern computers.

No there isn't

Attached: smugged.png (1400x1270, 384.38K)

...

This right here.

Attached: pffy.jpg (500x335, 87.64K)

so can we actually discuss this?

What specifically do you want to discuss? You can't just do a low effort post with one fact.
I think we're standardizing more which will help reduce bloat, manufacturers are settling with communications on board being PCIe or serial, NVMe will help reduce bloat, nvram even more.
I envision a computer which is nothing but NV-DIMM, CPU and PCIe lanes and it will be comfy.

wordpress has 400k LOC? how?

That source must be old, it's closer to 960k now
openhub.net/p/wordpress/analyses/latest/languages_summary

All I see is bloat. Everywhere bloat.

I watched the talk earlier. If he recall he said that he made the presentation in 2015 but has only just recorded it now. So that estimate has probably at least doubled by now.

Lisp machines already solved this problem. Lisp has a GC, so there's one GC for everything. Hash tables, bignums, rationals, objects, classes, structures, arrays, strings, packages, and functions are all standard data types that can be shared between any program and created at runtime. Strings have all the properties you expect like being able to grow and shrink to fit the size of the text, and on the Symbolics machines they even had font attributes. Arrays support multiple dimensions with displacement like a rectangular part of a window. Everything on a Lisp machine also has built-in bounds checking and data is promoted to larger types if necessary. All of this is done by a combination of hardware, microcode, and OS, so programs don't need nearly as much code.

people.eecs.berkeley.edu/~kubitron/cs252/handouts/papers/symbolics.pdf

Maybe it was on someone's calendar to fix, but theynever see it because they can't run the program either. Hmm. I used to think the strength of lisp machine toolscame from the fact that the developers actually used themregularly in their work and depended on them in order todevelop everything they were going to need in the nextgeneration system. That is, I though that there was acausal link between using your own tools and making thembetter. But maybe it's not whether you use your own tools thatmakes them good, but rather that the goodness or badness ofyour tools is just magnified over time by continuing to usethem. That would explain a lot of things about Unix...

What are good UNIX-Like FLOSS systems that aren't harmful bloat like this guy describes then? Ae we better off using a version of System V from 1998, or should we go off-UNIX to FreeDOS? I'm tired of UNIX-bloat personally, but Plan 9 isn't a daily-driver.

Modern Unix is terrible, and we're stuck with it. OpenBSD is probably your best bet for a daily driver.

Wew. Well... are there any new developments in Herd?

lmfao rustfags


Damn it sounds like this Lithp machine will blow us all away.

you should fuck off

The only reason plan 9 isn't a daily driver is because web rendering engines are bloat squared.
OpenBSD is probably the least harmful UNIX OS that will still satisfy as a daily driver

At this point if you want anything hurd like you should go with the Genode framework.

Attached: Laughter.jpg (600x439, 32.93K)

Please post pictures of your lisp machine.

What's kind of interesting about it, is that is is like a generational GC in which you have a generation for commonly collected things and one for rarely collected things on a lisp machine you could create your own areas aka "generations." Another interesting things areas let you do was say if you wanted that area to be garbage collected at all (though if you set it if you manually invoked the GC it would still run).

If LISP is so great, why is it not used productively? Why is there no usecase still prevalent today? Why didn't LISP penetrate into anything useful than just garbage glued together?

It is used productively. Not by a large amount of people though.
There are still use cases for it, you just don't see it being used very much since it is not very popular.
I don't know as I've only discovered the beauty of lisp about a month ago due to one of the unix haters on this board. If I had to guess it would be a combination between people thinking of list as a language for beginners, the AI winter in late 80s / early 90s, lisp machines becoming overpriced due to the companies behind them not lowering the price / not making progress fast enough, and early lisp interpreters being slow. Oh, and how could I forget u-weenies are a big reason it isn't as popular it could be.

...

I didn't do that though.

OpenBSD confuzzles me. They claim to be all about security and stuff. But security has 3 parts when it comes to information. Confidentiality, Integrity, and Availability.
So when looking at the CIAnigger triangle, how does OpenBSD stack up?
well it has confidentiality down, with all its cryptography and encryption focus, and how few security holes are there (or at least have been found. Its not like its got marketshare and is a common target)
But Integrity? Why does it still use FFS, with no TRIM support or volumes or anything? Where's ZFS, or Btrfs, or that Hammer2 thing? They're on different OSes of course. OpenBSD has no bitrot protection, no CoW, no snapshots >_<
And availability? well u can't really access your data right if its integrity is bad..

Attached: 5262f8962e8585d68149d11260abd93c.jpg (1386x715 81.01 KB, 1.7M)

It just made me laugh that it's only been a month and you're already evangelizing. Seems to be a thing with lispers though, many such cases! Real men use Scheme, or Racket

Well ones you know about. They try to downplay as much as possible vulnerabilities which are exposed.

Rather than evangelizing it, I get more of a feeling that everything else sucks more. It just gave me another perspective to see that things did not have to be the way that I'd always seen them.

This is not true, they post their vulns whenever they do an audit, they're the only BSD to do proper security errata, this misconception is caused by them trying to explain to zealous people on the mailing list that an exploit that blew up FreeBSD does a lot less or is mitigated on OpenBSD.


ZFS has a licence issue, Suns CDDL has managed to make ZFS radioactive for OpenBSD and Linux.
HAMMER2 might still be a thing but not for a while.
But yes, you're right, OpenBSD would be better off with a newer filesystem.

Fair enough, but I tend to think that if it were to work, then it would have done so at the time.

I'm only about half way through. I have a serious issue with some of his premises.
The "operating system" of, for instance, DOS, was separated between the BIOS (through agreement with the hardware vendors) and DOS itself. The BIOS provided a library of interrupts to access the hardware in an abstract way: the BIOS was a library that exposed a hardware abstraction layer for much of the hardware. DOS was a library that exposed process control and filesystem functionality. Pretty much every bootable game used the BIOS as its OS.
The OS provides a consistent software interface to the hardware. A good portion of Linux's out of control LOC count is drivers: programs that provide a consistent interface to hardware, sometimes doing in software what is expected to be done by that hardware. And many drivers are for hardware that hasn't been sold in 15 years by companies that have gone under.
Another layer is keeping the software from doing anything to the hardware that would damage the hardware or system stability. The average person cannot count with their fingers and toes how many times their Windows 95 system bluescreened. I can count with my fingers alone the number of times my Windows 7 system has bluescreened. Actually, I can probably do so with a single hand. All of that protection is expensive: both in code and in performance. Microsoft's file explorer has enough trouble managing my porn collection, do I want every single game company to be able to fuck over my HDD?
A lot of the bloat is in the bells and whistles that the OS supports. Some of it is in giving the user a consistent experience. Some of it is in giving developers a baseline of functionality that they don't have to buy or implement or read standards documents for. He talks about video card manufacturers having a consistent interface to their hardware. They have a de facto one: DirectX.

I mean, my take away thus far has been this:
What you are describing is a console.
And even consoles have their own operating systems, in part to add libraries that the third party developers don't have to buy or write.

Why though? I am truly impressed with what lishp has to offer.

All of this is useless bloat. (Prove me wrong). I've never lost data with FFS nor is it slow. I've been using an ssd with it for 3-4 years and haven't had any issues. And as someone who follows the mailing lists I'm not the only one.


I don't know why openbsd's security offends you so. They downplay the vulns that don't affect them, either because they already had mitigations in place or because they didn't implement retarded ideas and bloat (recent intel debug instruction CVE for example). They treat the ones that do affect them very seriously but it just so happens that every one except for 2 so far has been ineffective without physical access.

Meant to link: cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2018-8897

Reminder.

Attached: liberators.jpg (906x1330, 924.37K)

Post em. What companies use LISP for their products? What products?
They are still slow.

franz.com/success/customer_apps/data_mining/itastory.lhtml

lol so wat computer are very fast!! it doesn't matter!!!

There's one.

The talk put my feelings really well into words for me.

I've always wanted computers as "intimate" as possible, I've used the Raspberry Pi as a desktop for years because it's so simple and well supported and documented, yet modern enough to be usable. I've even toyed with Amigas and C64s.

Only recently I've given in and switched to doing everything on a thinkpad, because I do stil need to use the modern web, and I've got a 1440p display which the VC4 in the Pi can't output well enough to. And I also want to start programming with Vulkan, which will only be supported by the future VC5 IP in future Broadcom chips...

They don't exist and will never exist. UNIX-like can never be good because making it good would no longer be UNIX-like. The closest thing to a good UNIX-like OS is Multics, but Multics is much better than UNIX. You probably want UNIX-like because you want to port bloatware like X, systemd, glibc, bash, and Chromium to the new OS. UNIX spreads by porting because that code all sucks and nobody would write it from scratch unless they had Stockholm syndrome and brain damage. If you eliminated bloat and used a better language than C, you won't need as much code, so porting wouldn't matter as much because the programs would be simpler to write from scratch and take less time to replace.


>

Hi Mister Lisp meanie! ^.^
tfw Zig Forums is a Hello world program.
do your lisp OSes use the superior microkernel design?
like it or not, a modern web standards-compliant browser is kinda essential for basic usability these days.

m-mister lisp meanie? wheres your modern lisp OS? where can I try it?

Attached: a47b35cb9312aaf8744e32b812227243.jpg (500x685, 50.57K)

history is not on your side, user

I would argue that people don't need a multi-seat multi-tasking OS given that it's very feasible for each person to have a whole computer exclusively to themselves. Android OS is technically capable of being modified to provide a multi-seat configuration given it is built on top of Linux. In practice, Android is designed to service only one user profile at a time because its intended use case is for a computer in which only one exclusive user is operating the Android machine.

Nobody would be able to listen to music while working. Running a SSH server and a web server at the same time would be impossible.
Everyone would have root privileges. I hope you know why that's a bad thing.

Finally the two fags are in one thread. I wanna see a battle between these two.

It's called RAID you fucking faggot

but raid is just one of the things ZFS/btrfs/hammer2 offers to keep data safe.
standards have gotten a lot higher since the 1980s.
From ZFS wikipedia:
Ability to identify data that would have been found in a cache but has been discarded recently instead; this allows ZFS to reassess its caching decisions in light of later use and facilitates very high cache hit levels (ZFS cache hit rates are typically over 80%);

Nobody Fucking Cares

maybe take a minute to read it though. In terms of Integrity, OpenBSD's security is kinda lacking.

OwO this sounds fun!

t. someone who has no clue what a RAID is

Redundant Array of Independent Disks. theres different ways to do it, all of them other than RAID0 provide redundancy in the event of a disk failure. Like RAID1, which mirrors the data, or RAID5/6, which offer parity at the cost of one or two of your disks respectively.
again, thats just one of the many things ZFS has.

Read the list again, baka!

Attached: cfab3cb0f46171b24626a6e7d2230377--cute-anime-boy-anime-guys.jpg (736x992, 51.61K)

Attached: areyouretarded.mp4 (480x270, 162.57K)

its like you're sticking ur fingers in your ears and trying not to understand me! >_

God I swear you faggots have low eye kew

You seem like the moron here, do you know what soft-RAID is?

Were you expecting an exhaustive list?

The reason I want a UNIX-Like is because I happen to like the UNIX Philosophy. We've already estabilished you're a high schooler, and are only readong other's comments, the others being sore losers in a culture-war. Don't you have anything better to do?

Giving the Eastern-Bloc internet was a mistake.

It's time to reinvent the computer. Not a new architecture, but a whole new concept of computer.

Yes, fellas. I think it's finally time for base-57 computing to take the world over by storm.

No, he's describing the classic home computers he grew up with. And thing were not much different in the professional world either. It might be hard to imagine now, but not to long ago hardware and peripheral makers still delivered products that worked correctly, were easy to work with and followed sensible standards.

funny how i remove all the drivers i don't in my kernel and the loc is still in the millions
no, fuck you. a few memes like memory protection changed nothing. and if you're seriously going to claim OSes are now secure against misuse of their API/syscalls, etc, i'm going to have tell you to fuck off
anything you run on a "desktop" system such as linux, mac, or windows already effectively has full privileges. running a game on a security sensitive device (even consumer banking) is retarded
you have no idea what you're talking about. the bottom line is that if software is malicious, it can easily get full privileges on your desktop. if you're just talking about software inadverdently fucking up your system, then yes, that's a little more rare than win9x
consoles are just a program embedded in a web browser on windows 10 in a proprietary plastic box now
(only a slight exaggeration)

posting messages to a website is the hello world of websites

Imagine if your CPU followed the UNIX philosophy. Who cares if it only works correctly for 90% of the instructions you throw at it. So what if it halts everyday. Just go walk up to your computer and restart it. Wouldn't you prefer a CPU that actually worked to specification rather than one that followed the Unix philosophy?

For the uninitiated to this language:

Attached: 1433457340576-1.png (750x561, 145.07K)

No it's not. Most of the time, the weakest links is the user. The "secure by default" configuration is infinitely better than allowing for example "sudo su" on a user account. Even if you find kernel 0days, bugs happen, OpenBSD rather restarts than trying to magically fix unknown errors. This kind of "security above everything else" behavior is what you won't find in any other operating system.


That statement is false on Windows Vista+. By default the UAC prompts happen on a different "secure desktop", completely independent of the main desktop.

Moore's law killed Lisp machines back in the 80s. Symbolics could not keep up. If a new company tried to produce a Lisp/Smalltalk machine today they would have better luck.

Good talk about the evils of modern computing. Intel could fix this problem single handily if they follow Casey's advice. Intel has the CPU and a good enough GPU.

Do you guys not understand the meaning of abstraction? CPUs already have all the hardware to interface with USB devices, I2C devices, SPI devices and everything. A couple of hundred instructions is probably all you need to communicate with a piece of hardware connected to a bus because there hardware is all there, you just need to flip a couple of registers and the hardware will work as its supposed to. The additional LoC are to make the interfacing process easier to understand in the high level context.
If you want to do anything with a USB device, you don't have to go through a 1000 page manual about the particular CPU's USB subsystem registers and interrupts, you just have to pick up maybe the API guide and start.

This thread reaffirms my doubts that Zig Forums doesn't know much about the hardware part of technologies they use everyday

I agree with you. People are far too coarse with the words they use and they end up having a coarse worldview. In this specific case, their understanding of the word "bloat" and its relationship to modern systems is just like a buzzword. I agree in the principle that it's theoretically possible to provide software implementations that is objectively smaller in resource requirements. I just don't agree with their bitching and their lack of investment into writing such a system. The "less bloated" software platforms exist today, they simply don't care to use it at all.

you didn't watch the video

yeah? what hardware have you implemented drivers for?

I recall need for speed could boot by itself to save memory usage of running DOS in the 'background', man that's fucking cool

My CPU can crunch 4 billion instructions a second. 30 million lines is a fucking joke.

z505.com/cgi-bin/qkcont/qkcont.cgi?p=It Requires 3300MHZ For Back Button

FOSS BTFO

Well, he is the person behind this website: gng.z505.com/

I don't really get his arguments. He hates the GPL for software being free of charge but then advocates BSD which is also free of charge. Then he says you're not compensated for your work with GPL, but with BSD licenses, people can also freely take your work and sell it, but you receive nothing in return.

...

It's not worth it. The guy clearly doesn't understand how computers and the industry work.


Don't try. These people just formed a cult around hating GNU and made justifications later.

UAC doesn't and never has stopped anything. i haven't even heard the "UAC works" meme since 2006

and you can audit about 1 line of code per day

not all the code is for interfacing. there's tons of useless crap in there. and USB might as well be an HTTP server that your driver sends API calls to. it's complete shit and bloat

pretty much every IM software ever made was shit really. there were a few that seemed alright but they were written in C which is retarded for an IM client. just putting in vulns for no performance gain

Too busy doing your homework?

SPI, SMBus, I2C, USART, a couple of proprietary protocols in the late 90s. Nothing too extreme

And you can say that without watching the video? Just fuck off and come back with an argument after watching the guy.

Electron.
A Browser + Javashit + Javashit frameworks .. all to draw a shitty, half-functioning "web page GUI". This is the state of things.

There's not much code between you and the hardware on Linux, especially in networking. If you use a full system debugger or even attach to qemu you can step through the lifecycle of a UDP packet from when the kernel is notified to when it's delivered to the application and it's not a lot of code. I think a lot of the whinging is from the kind of people who don't belong in tech and are overwhelmed by the complexity of the surrounding system.

nice shill friendo :^), see

...

You can step through the kernel and watch how the driver handles packets. As for the firmware, get a probe and watch it.

Stop shilling so hard, it's embarrassing.

This makes too much sense for Zig Forums. They want to force everyone to stay on Windows but mostly Linux for their ideological/autismo reasons. Unix is an opinion and a bad one at that.

no.

When he shows lines of code in linux-kernel, how much of that are just code for drivers and not actual kernel-code in that sense?

Does that fucker have no idea what amiga kickstart was?