I was thinking of some file types that afaik don't exist.
One is filesystem entries of files stored in memory from disk files, updated when the disk file modification time changes. This would be a big disk-access optimization in some cases.
The in-memory entry permissions would be ignored, and writing to it would write to the disk file.
Another one is dynamic files that (only) have the name of a executable, which when opened would be executed by the kernel, creating a process child of init with its standard output piped to the file descriptor obtained by opening the dynamic file.
Here reading would depend on both the dynamic file's read permission and the named executable's execute permission. The idea is that it's transparent to the reading process.
Whether they could change the file to which they point to without deleting it would depend on the implementation, I think. (https://en.wikipedia.org/wiki/Symbolic_link#Variable_symbolic_links)
OS development is a major undertaking, it's not the sort of thing you can do in a weekend, especially considering it requires low-level programming techniques that are avoided in modern application development. The appeal of things like Linux and BSD is that the hard work is already done for you, but unlike Windows or Apple operating systems you have the freedom to modify the user interface (which is all most people really care about, messing around "under the hood" is really only called for when working with embedded systems or mainframes, where you need to get every last bit of performance out of the machine - and only low level programming specialists really have the ability to effectively optimize in those areas, anyway). And the UNIX architecture, although rather old, wasn't really made for "mainframes", one of its main advantages at the time was that it could run on lower-end systems.
All sort of things require low-level programming.
I think I understand your idea.
How about a daemon that handles that stuff? You give the daemon the name of a script and of a fifo. Your daemon calls inotify on the fifo and waits. When one of the registered fifos is open, the daemon triggers the script with it's output descriptor directed to the fifo.
It is an idea that has already been implemented at the socket level: inetd. It is a system that spawns a specified process when a connection to a port/socket has been opened. No fancy inotify crap.
Also, systemd supports all of this, including FIFOs.
Is that supposed to make it any simpler?
UNIX and C are highly overrated. They were made popular by commie students who liked to share software.
There were systems prior and after UNIX which were made better - MULTICS, IBM MVS, DEC VMS, etc
Systems for personal computers have nothing to do with unix too.
And for programming language C is nothing special. It has a lot of undefined behavior and ways to shoot your leg. And it's nothing but little impoved BCPL, nothing really new. There were better languages(ada, algol, fortran, lisps, etc, etc)
And Windows NT based on VMS. The only thing came from unix(not original unix but bsd) is sockets, but there were other solutions.
progrider finally kicked the bucket.. shame. there's news about a new one at goatfinger.ga
Terry Davis is on fucking hackernews, I don't think he's a /any/ thing specifically.
You sure proved your point by using meme arrows. Go ahead and call him a cuck too.
26ch.net 4x13.net world2ch.org all decided to meet up and have a discussion.
"This goatfinger, it's a shit board." World4ch took a long draw from hyr cigar, savored the smoke, then exhaled decisively. "Boys, it's time we give it a taste of it's own medicine."
26ch gasped. "But, but sir! What has goatfinger done?" 4x13, trembling with excitement, let out an autistic shriek. World4ch looked them both in the eye and continued speaking. "On April 2nd, we attack. Goatfinger is a piece of garbage that should not exist. True /prog/gers go to 4taba." 26ch nodded solemnly. "Yes, the shitty textboard that deserves progrider's legacy is https://dis.4ct.org/prog/." The brave textboards called an uber and the rest is history.
Oy vey! It's anuddah /prog/olocaust[i]![/i]
4taba is trash
I actually love 4taba. forgot it existed.. it's awesome though. A real cute little site.
A crap little shite*
Collected memes http://goatfinger.ga/y/
The pedophile /prog/ was the worst /prog/ ever. Do we have a pedophile-free replacement?
reminder that "lisp genius" john mccarthy didn't even implement lambda correctly
Please don't shout `Lisp'. It's no longer the 50s.
It's called the hat calculus. McCarthy didn't have the Unicode emoji for hat when he wrote that paper. Lambda is literally a ``worse is better'' printer's error.
Loser's Intensely Shitty Programming
What are your (current) hobby projects? What languages or libraries are you using? How usable or complete is it? What makes what you're doing novel or great?
No need to be smug or anything, or get all angry at other people for using <thing you hate>. Just share what you're up to. Add a URL if it's public too, if you want.
I'll start. I'm writing a stack-based language in Racket for use in embedded devices. It's already got Hindley-Milner style type inference, it just needs to actually produce output.
I'm also planning a modal text editor that feels like vim and a music-making program somehow.
But enough about me. Let's get some actual content on the front page of /code/.
Yes, despite having never done any OOP or GUI work in my life I was able to get it up and running in about an hour. That's also due in part to the very nice documentation they have on their object/class-system and how the GUI system uses it.
I am writing a music program where the UI is an AKAI APC MINI and the instruments are the Korg volca beats/bass/keys.
I am using ChucK as the backend for IO and scheduling, via a protocol over OSC/UDP. Low-latency scheduling and input polling are very fiddly to get right, and ChucK does it perfectly.
void main( int argc, char *argv )
printf(" ∧＿∧ ／￣￣￣￣￣￣￣￣\n");
printf(" （ ´∀｀） ＜ "); puts(argv);
printf(" ／ | ＼＿＿＿＿＿＿＿＿\n");
printf(" / .|\n");
printf(" /\"⌒ ヽ |.ｲ |\n");
printf(" ＿＿ | .ノ || ||＿＿\n");
printf(" ノく＿つ ∪ ∪ ＼\n");
printf("￣￣￣ヽつ￣￣￣￣￣￣￣ | |\n");
printf(" ＿＿＿＿＿＿＿＿＿＿＿__| |\n");
printf(" ￣￣￣￣￣￣￣￣￣￣￣￣| |\n");
I've been so busy with classes that I haven't had any time for my project. It really sucks. I miss working on it, and I feel like my programming skills might atrophy if I don't use them.
Nah, all you lose is what the hell you were doing on that project more than a week ago.
Just playing with making a very dumb sorta-BBcode-to-HTML converter in flex, just for the hack of it.
I really want to sit down and give Perl 6 a spin but I simply don't have the time.
I'm >>72 and I originally started it in Haskell. I've since restarted the project in Guile because there's a bit too much boilerplate in Haskell to get what I want.
I've simplified all the code heavily (I'll figure out the SLOC difference later but it's got to be <5%), and made it so that the whole thing is a library rather than a program, and a "setup" (which instruments are plugged in where, what UI pieces you want to see, etc) is a simple program you write. You should be able to live-code the thing in the REPL if you want, too, because that's hot these days.
This thread is for my fellow brothers (and sisters?) who have embraced useless, obfuscated languages like Brainfuck.
TECO called and said to tell you copycats to go suck eggs.
How should I do to make a loop in unlambda?
I found a cool blog site with nice accessible introductions to esolangs:
> nice accessible introductions to esolangs
That seems inappropriate!
Well, esolangs have this "image" that they're about pain and masochism, but I rather prefer the mind-stretching quality of them. You're exposed to things you would never think of.
dicks out for Harambe
I've already done it for zip in my Java program which was pretty straight forward and thought I'd expand it to cover the other most common format rar as well. But I can't find any information about reading the content of rar files to memory.
It is the best example I've found of extracting to disc. I'm no code guru so I might be missing some obvious change you could do to that code to write to memory instead disc.
So if someone could tell me how to change it to reading into a BufferedImage or so instead of to a File, or have some good links to other ways of reading/unpacking rar-content to memory it would be a real help.
Your best bet is using unrar.dll and writing a JNI wrapper. It's possible to do this without going via disk.
Or I guess you could try using JNA to access the DLL directly.
JNI is for pussies, and dear god why do you want to read RAR files?
dicks out for Harambe
dicks out for Harambe