Wow, are you speaking beyond your ken. When you say "some form of LZW compression", you should have said "some form of LZ compression" - either Lempel and Ziv's 1977 (sliding window) or 1978 (dictionary slots) papers on data compression by encoding matched literal strings. LZW is "some form" of LZ78 compression which, apart from GIFs, almost nobody uses. It's too fast and not compressy enough. Most things use LZH (LZ77 + Huffman), specifically DEFLATE, the kind used in PKZIP, firstly because the ZIP file format is still very popular, and because zlib is a very popular free library that can be embedded into anything.
Fax machines use a static Huffman encoding. They've never used run-length encoding. Run-length encoding is nothing compared to how efficiently LZ77 or LZ78 would handle pretty-printed XML.
Compression algorithms vary on both their compression and decompression speed. LZ77 is slow to compress and fast to decompress. Arithmetic coding and PPM are slow both compressing and decompressing.
While the main thrust of JPEG is to do "lossy" compression, the final stage of creating a JPEG is to do lossless compression on the data. There are two different official methods you can use: Huffman Coding and Arithmetic Coding.
Both methods do the same thing: they statistically analyse all the data, then re-encode it so the most common values are encoded in a smaller way than the least common values.
Huffman's main limitation is that each value compressed needs to consume at least one bit. Arithmetic coding can fit several values into a single bit. Thus, arithmetic coding is always better than Huffman, as it goes beyond Huffman's self-imposed barrier.
However, Huffman is NOT patented, while most forms of arithmetic coding, including the one used in the JPEG standard, ARE patented. The authors of Stuffit did nothing special - they just paid the patent fee. Now they just unpack the Huffman-encoded JPEG data and re-encode it with arithmetic coding. If you take some JPEGs that are already compressed with arithmetic coding, Stuffit can do nothing to make them better. But 99.9% of JPEGs are Huffman coded, because it would be extortionately expensive for, say, a digital camera manufacturer, to get a JPEG arithmetic coding patent license.
So Stuffit doesn't have remarkable code, they just paid money to get better compression that 99.9% of people specifically avoid because they don't think it's worth the money.
Can you explain why the predominantly Shi'a goverment of Iraq tolerates Shi'a death squads to go around and murder innocent Sunni civilians?
Why do Sunnis believe that Iraq is being overrun with Shi'a fighters from Iran?
Do you think the Sunnis should just sit back and let themselves be murdered, given that the Shi'a government installed in Iraq by the Americans doesn't give a fuck about them?
Given that the Americans forced every single Baath party member out of power and out of their jobs, why is the current Iraq government considering letting them back in just to give them something to do, because they otherwise spent their unemployed time fighting the new government?
But, obviously, the only people fighting in Iraq are "insurgents", just there to make the Americans look bad. It's not as if there's an imminent civil war approaching.
some codecs are open, others are proprietary secrets.
JPEG was intended to be open since its inception. The JPEG specification was developed by the International Standards Organisation (ISO). The full details of how to implement JPEG compression are explained in depth in the specification. Indeed, the reason the Forgent case is a scandal is because as part of the JPEG committee, they agreed not to enforce their patents against JPEG implementations. Also look at the GIF case. GIF became very popular despite LZW being patented, because people didn't know it was patented - they thought the whole thing was an open standard. People like to implement open standards.
By contrast, there's absolutely no documentation on Microsoft's proprietary codecs. To get any documentation, you have to reverse engineer them, which requires immense patience and diligence in effort. With JPEG, the reverse engineering and writing up the documentation has already been done for you.
If you look at the video compression world, you'll see one trend - codecs with published specifications have multiple implementations, proprietary codecs rarely even have one implementation outside the original.
One reason for this is that a specification carefully lays out what's essential and what's not, so programmers have freedom to implement things how they like. With proprietary codecs, everything is based on reverse engineering, so you have to be cautious about saying "we don't need this part", because that's just a guess, it's not set in stone.
Also, writing a specification is difficult, and it makes the writers think twice about their code. So specifications tend to be clean and well-designed. With proprietary code, any old shit can be thrown in because the expectation is that nobody will ever see it. Fixes on top of fixes on top of fixes can create hundreds of ugly corner cases that have to be faithfully repeated in any further implementation.
Finally, there is the legal aspect of it. Many codecs, both proprietary and open, have patents on them. However, the patents aren't the problem - the litigousness of the patent holder is. In the case of open standards, all patent holders involved agree RAND (reasonable and non discriminatory) licensing - if I want to implement an MP3 decoder, I buy a copy of the standard, then agree to pay the MP3 patent holders $0.10 per unit sold. The MP3 patent holders might try to make an example of you if you ignore their patents, but they would prefer just to get you signed up to their licensing scheme. On the other hand, the company holding patents on their proprietary codec might want to take you for everything you've got, in order to defend their technology and keep it proprietary - they have everything to lose if their proprietary, secret codec gets opened.
They've already designated PETA a terrorist organisation.
Er, no "they" haven't. The FBI has named SHAC (Stop Huntingdon Animal Cruelty), ELF (Earth Liberation Front) and ALF (Animal Liberation Front) as terrorist organisations. This is because they genuinely go around blowing up stuff with bombs.
Now, PeTA certainly has funded these organisations, and has definitely assisted people who perpetrated actions claimed in the name of these organisations (such as Rodney Coronado, a convicted firebomber), but PeTA itself is not a "terrorist organisation", merely a "supporter of terrorism".
This isn't due to some government paranoia; I don't like the Bush administration any more than you do; but you can't get mad about them calling out ELF, ALF and SHAC, it's just plain and simple fact. PeTA dole the money out to crazy folks, crazy folks blow stuff up.
My first impression was that not only did they tip thier hand, but now everyone and their dog will attempt to post code, and that this was a stupid idea.
As it clearly says in F-Secure's blog, they cracked this in May. They're only going public now. They've informed both the ISPs affected and the police. It is very unlikely that anyone will be able to register those accounts - if they do, they'll probably be talking to the police.
The Sober virus author can precalculate the URLs. We wanted to be able to do the same thing. So we cracked the algorithm. This enabled us to calculate the download URLs for any future date. In fact, we did this already in May 2005, and we informed the local police in Germany as well as the affected ISPs. But we didn't want to talk about it publically then - we didn't want to fill in the virus writer on this. But he must know this by now.
So you're going to wait it out until one of your competitors gives up an experienced staff member, rather than take a chance on an experienced, accomplished developer who hasn't encountered this problem domain but is very willing to add another string to their bow?
autoconf is great. It's also fairly obvious if you read the manual. If M4 confuses you, learn it. Not everything has to be C, Perl or Bash syntax.
autoconf works, autoconf works and autoconf works. Why do you use a configuration-detection script? Because you want your software to work! None of autoconf's "replacements" actually work in all scenarios. What's the point?
Sure, this one has simpler syntax, or that one makes smaller shell scripts, but they don't work on older or obscure architectures! If I didn't want my code to work on older or obscure architectures, I wouldn't use a configuration utility at all.
autoconf is still backwards compatible with all its documented macros. Keep using them. There is a conversion script for moving to the "new style" autoconf macros, which make it much easier to integrate with automake. If you used private, undocumented autoconf internals, they're now broken. Tough.
Firstly, if you read the entire autoconf manual, you know the intricacies of 90% of these niggling little compatibility differences on every UNIX variant out there.
Secondly (with automake) it can make a build environment that automatically converts ANSI C to K&R C, if the target install environment only supports K&R C. So don't sweat it. Use mmap() if HAVE_MMAP is defined. Personally, I would abstract file I/O and do all work as abstract file operations. You can then choose after-the-fact whether to fopen()/fread()/fclose() or mmap()/memcpy().
Public Domain is where coders often put "abandonware" stuff they're not particularly interested or proud of, or they'd likely get into legal hot water for asserting their ownership. (Or, alternatively, they're US Government employees who were funded by the US taxpayers).
I'm not saying they don't value their own software -- clearly they do, like any coder does -- but they don't care enough about it to ask people even to assert their authorship.
Given those set of values, I can easily understand the coder here.
So, what you're basically saying is you're a pragmatist, aka a sell-out. You are not an idealist. You spend your time playing games, not programming.
You would give up on Linux if you ever had to do some reverse-engineering and programming yourself to get something to work.
I'm going to be the first to break this to you - Linux is not for you. Keep it on your servers so you can have a free UNIX, but by no means use it as your desktop. Given you don't care in the slightest about having access to the source code of every single component on your system, and a guaranteed permission to modify and redistribute it as you see fit, then you really don't need Linux. Microsoft Windows or Mac OS X both subscribe to this "unchangeable, private" philosophy, and should fit your "rather have something closed that works" needs very well. Be honest, you're a PC gamer. You already have Windows. Why bother with Linux if you're just running closed source software on a closed-source tainted kernel?
Do you really think NVIDIA's staff are the only people in the world who do cutting edge graphics programming? Do you really think NVIDIA are the only people who could make the "special sauce"? Most of the advances in graphics technology have come from academia, where the "secrets" are published globally, they're not kept under lock and key.
Without agreeing to shit like CSS and region-lockout, there wouldn't have been DVDs from major studios at all.
At least, this way, the DVDs are actually being madeThe technical solution was only half the battle, though. Not all the studios embraced the idea. Three majors--Disney, Paramount and Fox--balked, expressing concerns about piracy. But rival studios winced at the prospect of paying royal-ties to Time Warner, which owned DVD patents. Paramount appeared to be worried that its corporate sibling Blockbuster would face competition from major retailers selling DVDs.
Tell me how many people at this LAN party were running Linux instead of a pirate copy of Microsoft Windows.
We'll get off the 'lock in' bullshit when games companies use open, cross-platform standards like OpenGL and SDL in preference to sugar-coated lock-in Microsoft only technologies like Direct3D and DirectX.
Microsoft court the game dev community to, you know... they want you to use their proprietary technologies so gamers have no choice but to use Windows to play games, pirated or not.
Scenario: I've got xterm open, chatting with friends. Somebody sends the room a URL.
Windows way: I highlight and hit CTRL+C to copy
Ah, I see you don't have a Windows terminal window open, because that wouldn't work. You'd have to do Alt-Space, E, K, highlight the area with the mouse, Keypad Enter.
So say thank-you for your special non Microsoft Windows terminal emulator.
Personally, I would just select with the mouse in X, which is actually one action, not "so fluid as to be practically one action", pop over to my Mozilla window, hit Ctrl-T for a new tab, paste directly into the empty URL bar and press return.
But then, I never have to use Windows, so I don't have to make my habits cross-platform. I do use the MacOS X, where I've learnt to Command-C, go to Mozilla, Command-T, Command-V, Enter.
It has nothing to do with the client. It is the Microsoft Exchange SERVER that sends these fucklumps out. We still get WINMAIL.DAT files to this day. People are still sending them.
Nothing annoys me more than having to save off the WINMAIL.DAT attachment and run it through a TNEF unpacker just to get the REAL attachments of a mail. OK, nothing except people who send me MS Word documents with nothing but ASCII text inside them. And, of course, people who send me ASCII text inside a MS Word document inside a TNEF attachment.
Why don't Microsoft set this by default? Email is email. People have got to learn that Microsoft are responsible for this abomination, and the hassle required is Microsoft's fault for not complying to the standard.
where all you get is (if you're lucky) a text version of the email message, then a WINMAIL.DAT uuencoded or MIMEd attachment, which contains all the useful data in a proprietary binary format.
Rather than simply create compliant MIME mails, Microsoft uses this secret format to say "yeah, we'll try and send email, but if you really want to communicate with companies that use Exchange Mail Server, you need to buy a copy of Exchange Mail Server".
Fun fact - the European version of ICO has an objdump of the game executable right there on the DVD. While it's not source code, we do get all the filenames of the source code, and all the labels / method names, etc.
It's really interesting. For example, you get to see exactly which programmer coded what, as they all kept the code in their own directories. And they really did call Ico and Yorda just 'boy' and 'girl' in their code. The story must have been made up by the marketing department.
Because the first printf was automatically flushed after the newline, because it's going to a terminal. Some stdio implementations are like that.
It wasn't flushed in the second example, it would only write out data once there was a full buffer's worth (e.g. 32kb or such), or when the stream was closed. Because it wasn't flushed, both fork()ed copies had this unflushed data in their buffer and both printed it.
I'm sure it scares a few newbies, but it's fairly obvious.
You may recall that the Amiga's owners for almost a decade, Commodore, went spectacularly bankrupt. The Amiga was bought by ESCOM, who then went bankrupt. Then Gateway bought the Amiga, but sold it on before becoming bankrupt... is the Amiga's curse about to take another victim?
Dimensio, I know you from way back. You're the same of reactionary dickwad that thinks SPEWS is a good idea. It ain't.
Please keep your Libertarian views out of our country (the UK). The will of the UK people is to remain gun-free. After Thomas Hamilton dropped his science on those assembled, the people of the UK demanded a hand-gun ban. Whether you think we're smoking crack or not, we are entitled to our own legislation. So quit bitching about it, you have no voice in our country.
Muggers do not generally carry guns. This is because most muggers are not random opportunists, they are drug-users with a track record of mugging and are known to the police. They are not going to risk carrying a gun, because it doesn't improve their mugging, and it's immediate jailtime just for having a gun (or a knife). If they don't have any weapons, the worst they can be done for is loitering with intent. Unlike the US, the UK police actually have to protect their citizens.
Only yeehaw cowboys call brandishing an offensive weapon "defense". We ship all ours over to the US as soon as we get the chance. If they're happy to live in a land of gun fetishists, they're welcome. Meanwhile, your favourite weapon of statistics tells us more people are killed in gun accidents in the US than people in the UK are killed by gun accidents and gun crime put together.
Stop calling yourself "ST", we know it's really you. We know you've been having trouble at K5 recently, but you don't have to come back begging to the other site for advice. Please. Be proud. Be a man. Solve your problems like a man.
Wow, are you speaking beyond your ken. When you say "some form of LZW compression", you should have said "some form of LZ compression" - either Lempel and Ziv's 1977 (sliding window) or 1978 (dictionary slots) papers on data compression by encoding matched literal strings. LZW is "some form" of LZ78 compression which, apart from GIFs, almost nobody uses. It's too fast and not compressy enough. Most things use LZH (LZ77 + Huffman), specifically DEFLATE, the kind used in PKZIP, firstly because the ZIP file format is still very popular, and because zlib is a very popular free library that can be embedded into anything.
Fax machines use a static Huffman encoding. They've never used run-length encoding. Run-length encoding is nothing compared to how efficiently LZ77 or LZ78 would handle pretty-printed XML.
Compression algorithms vary on both their compression and decompression speed. LZ77 is slow to compress and fast to decompress. Arithmetic coding and PPM are slow both compressing and decompressing.
While the main thrust of JPEG is to do "lossy" compression, the final stage of creating a JPEG is to do lossless compression on the data. There are two different official methods you can use: Huffman Coding and Arithmetic Coding.
Both methods do the same thing: they statistically analyse all the data, then re-encode it so the most common values are encoded in a smaller way than the least common values.
Huffman's main limitation is that each value compressed needs to consume at least one bit. Arithmetic coding can fit several values into a single bit. Thus, arithmetic coding is always better than Huffman, as it goes beyond Huffman's self-imposed barrier.
However, Huffman is NOT patented, while most forms of arithmetic coding, including the one used in the JPEG standard, ARE patented. The authors of Stuffit did nothing special - they just paid the patent fee. Now they just unpack the Huffman-encoded JPEG data and re-encode it with arithmetic coding. If you take some JPEGs that are already compressed with arithmetic coding, Stuffit can do nothing to make them better. But 99.9% of JPEGs are Huffman coded, because it would be extortionately expensive for, say, a digital camera manufacturer, to get a JPEG arithmetic coding patent license.
So Stuffit doesn't have remarkable code, they just paid money to get better compression that 99.9% of people specifically avoid because they don't think it's worth the money.
Can you explain why the predominantly Shi'a goverment of Iraq tolerates Shi'a death squads to go around and murder innocent Sunni civilians?
Why do Sunnis believe that Iraq is being overrun with Shi'a fighters from Iran?
Do you think the Sunnis should just sit back and let themselves be murdered, given that the Shi'a government installed in Iraq by the Americans doesn't give a fuck about them?
Given that the Americans forced every single Baath party member out of power and out of their jobs, why is the current Iraq government considering letting them back in just to give them something to do, because they otherwise spent their unemployed time fighting the new government?
But, obviously, the only people fighting in Iraq are "insurgents", just there to make the Americans look bad. It's not as if there's an imminent civil war approaching.
some codecs are open, others are proprietary secrets.
JPEG was intended to be open since its inception. The JPEG specification was developed by the International Standards Organisation (ISO). The full details of how to implement JPEG compression are explained in depth in the specification. Indeed, the reason the Forgent case is a scandal is because as part of the JPEG committee, they agreed not to enforce their patents against JPEG implementations. Also look at the GIF case. GIF became very popular despite LZW being patented, because people didn't know it was patented - they thought the whole thing was an open standard. People like to implement open standards.
By contrast, there's absolutely no documentation on Microsoft's proprietary codecs. To get any documentation, you have to reverse engineer them, which requires immense patience and diligence in effort. With JPEG, the reverse engineering and writing up the documentation has already been done for you.
If you look at the video compression world, you'll see one trend - codecs with published specifications have multiple implementations, proprietary codecs rarely even have one implementation outside the original.
One reason for this is that a specification carefully lays out what's essential and what's not, so programmers have freedom to implement things how they like. With proprietary codecs, everything is based on reverse engineering, so you have to be cautious about saying "we don't need this part", because that's just a guess, it's not set in stone.
Also, writing a specification is difficult, and it makes the writers think twice about their code. So specifications tend to be clean and well-designed. With proprietary code, any old shit can be thrown in because the expectation is that nobody will ever see it. Fixes on top of fixes on top of fixes can create hundreds of ugly corner cases that have to be faithfully repeated in any further implementation.
Finally, there is the legal aspect of it. Many codecs, both proprietary and open, have patents on them. However, the patents aren't the problem - the litigousness of the patent holder is. In the case of open standards, all patent holders involved agree RAND (reasonable and non discriminatory) licensing - if I want to implement an MP3 decoder, I buy a copy of the standard, then agree to pay the MP3 patent holders $0.10 per unit sold. The MP3 patent holders might try to make an example of you if you ignore their patents, but they would prefer just to get you signed up to their licensing scheme. On the other hand, the company holding patents on their proprietary codec might want to take you for everything you've got, in order to defend their technology and keep it proprietary - they have everything to lose if their proprietary, secret codec gets opened.
They've already designated PETA a terrorist organisation.
Er, no "they" haven't. The FBI has named SHAC (Stop Huntingdon Animal Cruelty), ELF (Earth Liberation Front) and ALF (Animal Liberation Front) as terrorist organisations. This is because they genuinely go around blowing up stuff with bombs.
Now, PeTA certainly has funded these organisations, and has definitely assisted people who perpetrated actions claimed in the name of these organisations (such as Rodney Coronado, a convicted firebomber), but PeTA itself is not a "terrorist organisation", merely a "supporter of terrorism".
This isn't due to some government paranoia; I don't like the Bush administration any more than you do; but you can't get mad about them calling out ELF, ALF and SHAC, it's just plain and simple fact. PeTA dole the money out to crazy folks, crazy folks blow stuff up.
They can't stop the virus spreading. That's the fault of the poor saps who get fooled into starting it up.
They can, however, stop the virus calling home and downloading the secret payload that the virus author intended to launch on 5th January 2006.
As it clearly says in F-Secure's blog, they cracked this in May. They're only going public now. They've informed both the ISPs affected and the police. It is very unlikely that anyone will be able to register those accounts - if they do, they'll probably be talking to the police.
So you're going to wait it out until one of your competitors gives up an experienced staff member, rather than take a chance on an experienced, accomplished developer who hasn't encountered this problem domain but is very willing to add another string to their bow?
autoconf is great. It's also fairly obvious if you read the manual. If M4 confuses you, learn it. Not everything has to be C, Perl or Bash syntax.
autoconf works, autoconf works and autoconf works. Why do you use a configuration-detection script? Because you want your software to work! None of autoconf's "replacements" actually work in all scenarios. What's the point?
Sure, this one has simpler syntax, or that one makes smaller shell scripts, but they don't work on older or obscure architectures! If I didn't want my code to work on older or obscure architectures, I wouldn't use a configuration utility at all.
autoconf is still backwards compatible with all its documented macros. Keep using them. There is a conversion script for moving to the "new style" autoconf macros, which make it much easier to integrate with automake. If you used private, undocumented autoconf internals, they're now broken. Tough.
Firstly, if you read the entire autoconf manual, you know the intricacies of 90% of these niggling little compatibility differences on every UNIX variant out there.
Secondly (with automake) it can make a build environment that automatically converts ANSI C to K&R C, if the target install environment only supports K&R C. So don't sweat it. Use mmap() if HAVE_MMAP is defined. Personally, I would abstract file I/O and do all work as abstract file operations. You can then choose after-the-fact whether to fopen()/fread()/fclose() or mmap()/memcpy().
actually, no, sorry, it is a moon.
Public Domain is where coders often put "abandonware" stuff they're not particularly interested or proud of, or they'd likely get into legal hot water for asserting their ownership. (Or, alternatively, they're US Government employees who were funded by the US taxpayers).
I'm not saying they don't value their own software -- clearly they do, like any coder does -- but they don't care enough about it to ask people even to assert their authorship.
Given those set of values, I can easily understand the coder here.
So, what you're basically saying is you're a pragmatist, aka a sell-out. You are not an idealist. You spend your time playing games, not programming.
You would give up on Linux if you ever had to do some reverse-engineering and programming yourself to get something to work.
I'm going to be the first to break this to you - Linux is not for you. Keep it on your servers so you can have a free UNIX, but by no means use it as your desktop. Given you don't care in the slightest about having access to the source code of every single component on your system, and a guaranteed permission to modify and redistribute it as you see fit, then you really don't need Linux. Microsoft Windows or Mac OS X both subscribe to this "unchangeable, private" philosophy, and should fit your "rather have something closed that works" needs very well. Be honest, you're a PC gamer. You already have Windows. Why bother with Linux if you're just running closed source software on a closed-source tainted kernel?
Do you really think NVIDIA's staff are the only people in the world who do cutting edge graphics programming? Do you really think NVIDIA are the only people who could make the "special sauce"? Most of the advances in graphics technology have come from academia, where the "secrets" are published globally, they're not kept under lock and key.
Without agreeing to shit like CSS and region-lockout, there wouldn't have been DVDs from major studios at all.
At least, this way, the DVDs are actually being madeThe technical solution was only half the battle, though. Not all the studios embraced the idea. Three majors--Disney, Paramount and Fox--balked, expressing concerns about piracy. But rival studios winced at the prospect of paying royal-ties to Time Warner, which owned DVD patents. Paramount appeared to be worried that its corporate sibling Blockbuster would face competition from major retailers selling DVDs.
I didn't realise she had so many family members. Well, you know what they say about Northerners...
And please, get off this 'lock in' bullshit.
Tell me how many people at this LAN party were running Linux instead of a pirate copy of Microsoft Windows.
We'll get off the 'lock in' bullshit when games companies use open, cross-platform standards like OpenGL and SDL in preference to sugar-coated lock-in Microsoft only technologies like Direct3D and DirectX.
Microsoft court the game dev community to, you know... they want you to use their proprietary technologies so gamers have no choice but to use Windows to play games, pirated or not.
Scenario: I've got xterm open, chatting with friends. Somebody sends the room a URL.
Windows way: I highlight and hit CTRL+C to copy
Ah, I see you don't have a Windows terminal window open, because that wouldn't work. You'd have to do Alt-Space, E, K, highlight the area with the mouse, Keypad Enter.
So say thank-you for your special non Microsoft Windows terminal emulator.
Personally, I would just select with the mouse in X, which is actually one action, not "so fluid as to be practically one action", pop over to my Mozilla window, hit Ctrl-T for a new tab, paste directly into the empty URL bar and press return.
But then, I never have to use Windows, so I don't have to make my habits cross-platform. I do use the MacOS X, where I've learnt to Command-C, go to Mozilla, Command-T, Command-V, Enter.
It has nothing to do with the client. It is the Microsoft Exchange SERVER that sends these fucklumps out. We still get WINMAIL.DAT files to this day. People are still sending them.
Nothing annoys me more than having to save off the WINMAIL.DAT attachment and run it through a TNEF unpacker just to get the REAL attachments of a mail. OK, nothing except people who send me MS Word documents with nothing but ASCII text inside them. And, of course, people who send me ASCII text inside a MS Word document inside a TNEF attachment.
How to actually send compliant, fully functional email instead of encumbered, lock-in Microsoft crap.
Why don't Microsoft set this by default? Email is email. People have got to learn that Microsoft are responsible for this abomination, and the hassle required is Microsoft's fault for not complying to the standard.
where all you get is (if you're lucky) a text version of the email message, then a WINMAIL.DAT uuencoded or MIMEd attachment, which contains all the useful data in a proprietary binary format.
Rather than simply create compliant MIME mails, Microsoft uses this secret format to say "yeah, we'll try and send email, but if you really want to communicate with companies that use Exchange Mail Server, you need to buy a copy of Exchange Mail Server".
Fun fact - the European version of ICO has an objdump of the game executable right there on the DVD. While it's not source code, we do get all the filenames of the source code, and all the labels / method names, etc.
It's really interesting. For example, you get to see exactly which programmer coded what, as they all kept the code in their own directories. And they really did call Ico and Yorda just 'boy' and 'girl' in their code. The story must have been made up by the marketing department.
Because the first printf was automatically flushed after the newline, because it's going to a terminal. Some stdio implementations are like that.
It wasn't flushed in the second example, it would only write out data once there was a full buffer's worth (e.g. 32kb or such), or when the stream was closed. Because it wasn't flushed, both fork()ed copies had this unflushed data in their buffer and both printed it.
I'm sure it scares a few newbies, but it's fairly obvious.
You may recall that the Amiga's owners for almost a decade, Commodore, went spectacularly bankrupt. The Amiga was bought by ESCOM, who then went bankrupt. Then Gateway bought the Amiga, but sold it on before becoming bankrupt... is the Amiga's curse about to take another victim?
Dimensio, I know you from way back. You're the same of reactionary dickwad that thinks SPEWS is a good idea. It ain't.
Please keep your Libertarian views out of our country (the UK). The will of the UK people is to remain gun-free. After Thomas Hamilton dropped his science on those assembled, the people of the UK demanded a hand-gun ban. Whether you think we're smoking crack or not, we are entitled to our own legislation. So quit bitching about it, you have no voice in our country.
Muggers do not generally carry guns. This is because most muggers are not random opportunists, they are drug-users with a track record of mugging and are known to the police. They are not going to risk carrying a gun, because it doesn't improve their mugging, and it's immediate jailtime just for having a gun (or a knife). If they don't have any weapons, the worst they can be done for is loitering with intent. Unlike the US, the UK police actually have to protect their citizens.
Only yeehaw cowboys call brandishing an offensive weapon "defense". We ship all ours over to the US as soon as we get the chance. If they're happy to live in a land of gun fetishists, they're welcome. Meanwhile, your favourite weapon of statistics tells us more people are killed in gun accidents in the US than people in the UK are killed by gun accidents and gun crime put together.
Stop calling yourself "ST", we know it's really you. We know you've been having trouble at K5 recently, but you don't have to come back begging to the other site for advice. Please. Be proud. Be a man. Solve your problems like a man.