I don't know how well you may remember these things, but I distinctly remember as a kid doing myself grievous bodily harm (ok, well cutting myself repeatedly) on these things.
With that in mind, were I a parent, I wouldn't run out and buy a Meccano set just because 'Legos are ruining your child's engineering potential', before you consider the fact that when left in a box in the basement for a few months, these things rust. In comparison, old legos just accumulate dust.
I also recall getting really sick and tired of turning that screw driver.
I did read the contract. It did not state anything about recurring billing at the time I made my purchase. Those were things they grafted on after the fact when everybody noticed that these would make a great little linux-Xterminal/cheap-ass-mp3-player/recipe-lookup -station.
They were not within their rights to bill any more charges than the end user had authorized, period. Speaking as the former owner of a small business, you just "don't do that."
One) I had set up to automatically pay down that card over a period of time, online at wingspan. I only noticed when almost a year later I checked and saw that the balance wasn't as low as I expected.
Two) I would be ok with it taking 6 calls if they hadn't claimed it would be taken care of on call 1 then proceeded to bill me for two more months, refusing to take care of either the new charges or the old ones on call 2, making me jump through hoops to talk to someone who could help me, who then proceeded to repeat this whole scenario a second time.
If I had put linux on it and violated their business model, or actually signed up after they changed their terms things would be different, but as things stand they never even informed me that they had changed terms, nor that my credit card would be charged for anything more than for the purchase of the machine itself.
I actually purchased one of these for its original purpose (for my grandmother) to get her on the internet for her birthday. After I made the purchase she wound up getting a (used) real computer from a friend. Therefore I didn't bother to remove the I-Opener from the box. Netpliance after all wouldn't take the machine back. Mine was purchased right before they made the declaration that they would be automatically signing everyone up. A year later, I was cleaning up my credit card bills and found out they'd been billing me all along.
It took about 6 phone calls and various threats to get my money back - which was promised to me on 3 different calls, but somehow they kept failing to follow through.
Actually, there is a mistake in my post. The LGPL is Potentially Viral Software as well, as it requires tacit permission to be able to reverse engineer all software linked against it and Microsoft does not provide that in its EULA.
As an aside, it looks like I'll have to release CosmOS under the Mozilla Public License. I already couldn't use the GPL because of its own restrictions.
Please note the use of two distinct terms in the verbage of this clause. 'Potentially Viral Software' and 'Publicly Available Software'.
Virtually every post I have read thus far on the topic has confused the two.
First, Potentially Viral Software is defined as granting rights to distribute, use, mass-mail, and clean bird cages with Microsoft software, while requiring them to give you the source.
Second, Publicly Available Software is defined as software distributed under an open source license. Many of these licenses carry their own baggage about what they can be distributed with or linked against. This states that you cannot distribute anything which falls under this EULA with anything distributed under one of these licenses.
GCC and the Linux Kernel are both Potentially Viral Software in certain circumstances, because they fall under the GPL. If you link to them the GPL is viral, because it creates obligations for Microsoft. Therefore using this code to create a kernel driver is a no-no.
However, using GCC to compile does not convey the GPL on the resultant object code. Even though it is Publicly Available Software it does not fall under the terms of Potentially Viral Software. Linking against the Standard Library is not viral as the LGPL does NOT convey any obligation on the behalf of Microsoft. On the other hand, the resultant binary would not be distributable, because it would constitute distribution in part with Publicly Available Software.
Although, Linus has been able to, thus far, creatively interpret the GPL to allow vendor distributed binary drivers, the GPL does create obligations on code linked against it. This is the reason that the LGPL was created.
The definition of two very similar terms in such a short space creates a lot of confusion.
It is not Potentially Viral Software if you compile with GCC, because compiling with GCC does not convey the GPL upon the resultant object code. GCC is Publicly Available Software, which means you cannot bundle GCC with software covered under this EULA.
This is 'bad', but not nearly as bad as not being able to use open source tools in the development of software under this license. They are protecting themselves from 3rd party licenses.
(c) Open Source. Recipient's license rights to the Software are conditioned upon Recipient (i) not distributing such Software, in whole or in part, in conjunction with
Potentially Viral Software (as defined below); and (ii) not using Potentially Viral Software (e.g. tools) to develop Recipient software which includes the Software, in whole or in part. For purposes of the foregoing, "Potentially Viral Software" means software which is licensed pursuant to terms that: (x) create, or purport to create, obligations for Microsoft with respect to the Software or (y) grant, or purport to grant, to any third party any rights to or immunities under Microsoft's intellectual property or proprietary rights in the Software. By way of example but not limitation of the foregoing, Recipient shall not distribute the Software, in whole or in part, in conjunction with any Publicly Available Software. "Publicly Available Software" means each of (i) any software that contains, or is derived in any manner (in whole or in part) from, any software that is distributed as free software, open source software (e.g. Linux) or similar licensing or distribution models; and (ii) any software that requires as a condition of use, modification and/or distribution of such software that other software distributed with such software (A) be disclosed or distributed in source code form; (B) be licensed for the purpose of making derivative works; or (C) be redistributable at no charge. Publicly Available Software includes, without limitation, software licensed or distributed under any of the following licenses or distribution models, or licenses or distribution models similar to any of the following: (A) GNU's General Public License (GPL) or Lesser/Library GPL (LGPL), (B) The Artistic License (e.g., PERL), (C) the Mozilla Public License, (D) the Netscape Public License, (E) the Sun Community Source License (SCSL), and (F) the Sun Industry Standards License (SISL).
Nothing in this license prevents you from compiling with GCC into a shared library, distributing that completely separately from your application and linking against it, but it does prevent you from distributing the aforementioned shared library with Publicly Available Software (e.g. Linux).
Although, this restriction is a nuisance, it is actually a protection they already had under the terms of many of these other licenses. They are simply stating it themselves, to preemptively prevent people from bundling this software with Publicly Available Software, which may appear to create obligations for Microsoft to which they have not explicitly agreed.
This goes a long way towards my long-standing belief that the GPL draws too firm of a line in the sand. I work almost exclusively with LGPL'd code as a result, because I can cleanly delineate what is open and what is proprietary in library sized increments.
Disclaimer: I do not work for Microsoft, and IANAL. Take this interpretation with a grain of salt.
Having read this book I can say that I agree with many of Raskin's points about a number of subjects and 'agree to disagree' regarding quite a few others.
I believe very strongly in his points regarding increasing the orthogonality of operations you let users perform, let them perform them anywhere by all means.
I agree whole-heartedly that one should try to build a mode-less interface wherever possible and that modes are the source of the majority of user error, because they force conscious thought about things that should be reflex.
I agree that 'user input is sacred' and should be preserved and that you shouldn't steal the focus away from the user midsentence.
I agree with his arguments that most popup messages are useless and should not steal the focus away from the application, especially if there is only one action you can perform (i.e. click OK)
On the other hand, I am somewhat dubious about the merit of his desire for see-through overlays however. I feel that they only really result in so much clutter and the visibility of text below will make them difficult to read. This could, perhaps, be managed through some form of opacity control, but thats a lot to ask the user to use.
I also think that he hasn't done sufficient research on usability when it comes to some of his more radical proposals later on in the book.
I.E. His desire to use 'multiple selection' for everything, and the fixed scope of document tags. I think that he doesn't take into account the complex state he is making the user retain in their head in the first case and that he doesn't generalize the latter sufficiently to be useful.
However, a system based entirely on xml tags, where files are just tags in the larger system would fit his design goals nicely, and bypass this problem entirely.
All in all, I believe that I am better for having read this book, but moreso for having taken it with a grain of salt.
The real problem that I have with this book is its lack of direct applicability. The user interface he describes is so alien to current users that its not something you could graft over what they use today and expect them to pick it up in a reasonable timeframe. So you won't be building fully 'humane' windows applications any time soon.
You have to order an 'alarm wire'. It does not go through the switch, but is instead hard wired together at a patch panel somewhere. There is no switching hardware on the line. (DSL doesn't work at all if there is a switch, or bridge tap, etc. on the line)
I can't say the last time I actually saw alarm wire pricing from a telco, but in this area (Detroit) it used to be $11/end
Multicast can work that way. The underlying protocol that they are adapting is a unicast UDP based game protocol.
Take that protocol and feed it into a 'proxy', for lack of a better term. The proxy then just transmits multicast UDP on a given multicast address/port and anyone on the mbone can tune in to watch. I'd assume that either the special user that the proxy uses to connect to the game has all line-of-sight filtering disabled (no pvs checking) or there is only 1 or 2 viewpoints running around for the spectators which are rebroadcast from the multicast proxy.
I've done a lot of work on adapting gaming to multicast protocols. I even have a quake1 multicast proxy client/broadcast server and broadcast client/proxy server pair (which I'd originally written as an aimbot and expanded), from a year or so back, which I have used to test this successfully. This is about the most rediculously simple use of multicast I've yet seen.
The problem is of course th fact that in order to view the stream you have to be connected to the mbone, or they may use the protocol only at conventions/large gaming events to allow spectators at the event to watch from within the game, without disturbing the contestants and without sending the games out over the general Mbone.
Correction. Only broken routers which do not obey the original RFC for TCP stating that they should ignore the reserved bit , which was later earmarked for ECN if they don't understand it are broken.
Note the RFC for ECN does not even enter into this. They should just silently pass a packet with that bit set along like any other.
Its not so much that Linux is on the bleeding edge, its more that said router programmers didn't RTFM.
But of course, they can just chalk up the lost sales to Napster anyways, so the RIAA doesn't care. It just strengthens their case.
Isn't it lovely how if you boycott them, it strengthens their argument about the economic impact of copying technologies, even though it is not the copying technologies, but their reactions to those technologies which contribute to the lack of desire to purchase CDs for some people (well, me at least).
P.S. I'm a cultural luddite. I don't buy CDs and I don't watch TV, but I do (yes, I'm a hypocrite) buy DVDs. Arrgh I can't escape. Unfortunately there does not seem to be any decent independant movie content and nothing in sight.
In his defense, while the 3d acceleration may not help the rendering engine, it sure as hell can help out the modeling portion. Nothing sucks worse that turning your model, or pulling a vertex out of place and waiting for the scene to redraw, over and over.
What I'm looking for is more like a slightly more modern version (i.e. PCI) of this 4 meg SSD without all the EPROM and flash baggage to act as a cheap TRAM cache for file system journaling.
The Playtpus SSD doesn't do much for me. My goal would be to speed system recovery in the case of someone kicking out the plug without going to the extremes of the EROS project, and without doing the damage to file system performance needed for conventional journaling file systems.
Linux has not supported key security accreditation standards. Every member of the Windows NT family since Windows NT 3.5 has been evaluated at either a C2 level under the U.S. Government's evaluation process or at a C2-equivalent level under the British Government's ITSEC process. In contrast, no Linux products are listed on the U.S. Government's evaluated product list.
Pardon me, but I thought Windows NT was only C2 certified on a particular old Compaq model with no network card and the floppy drive glued shut. Security certifications are only available for given hardware/software configurations. Every time they release a patch or switch CPUs or peripherals the process begins again.
Think about it, a watch that could talk NTP (admittedly over IrDA), you'd never have to set your watch again. Though I have to admit the display is a little too small to DO much with.
At the risk of getting lynched by the Slashdot anti-patent mob (of which I consider myself a dues-paying member), I'm going to say 'Its about time'.
3dfx used very similar strong arm tactics against virtually all the other manufacturers of 3d graphics cards when 16 bit graphics (to which virtually all of 3dfx's myriad patents apply) were in vogue. So I'm all for seeing them get slapped around a little with their own tactics.
This is not a case of big evil NVIDIA picking on poor defenseless 3dfx, but more like them finally turning the tables. Go NVIDIA!
Look up Lojban, which is very similar to what you describe. Esperanto is also around, but well, Lojban is cooler and more suited to electronic parsing. Hideous punctuation though.;)
Did the poster actually read the article? It says that in theory it the vial could store 10 billion gigabytes of information. It did not say that they "have been able to store" that much information. _Big_ difference.
In theory I could quantum tunnel to the moon and die of asphyxiation, but I have not been able to do so yet.;)
IIRC from the original news release (which I watched the webcast of, along with everyone else on Slashdot) Transmeta did not claim that the processor alone more than halve power requirements, but that the rest of the device would also have to be designed in a power conscious manner and that they were working with OEMs to meet that goal.
So whats the big deal? That double battery life requires more than just swapping a chip? I just don't like seeing Transmeta taking flak for something that I don't recall them ever saying in so many words.
I dislike the syntax used for C#'s structs. Since it is identical to the syntax used to access a class, you cannot identify without digging up the location of the source definition of the object whether or not you are passing by value or reference into the function.
my_int bar(my_int x) {
x+=1;
return x;
}
my_int foo() {
my_int y = 2;
bar(y);
return bar(y);
}
foo returns different results depending on whether or not my_int is a struct or a class. You cannot tell if modifying the object will modify the original or not without looking for the original class definition which can be buried pretty much anywhere in c#, because it has abandoned the rigid formalism that Java used of one public class per file and the name of the file matching the class.
Mind you, Microsoft will probably sell a nice Visual Studio plugin which looks up the source definition and shows you if its a class or struct, and which allows you to hyperlink to the definition (witness MSVC and VB), but I'm examining the language, not Microsoft's tools.
I disagree with the author of this article about the presence of Attributes. Attributes (as ugly as they are) create an avenue to extend the metainformation provided by the language. Since the attributes reside at the class rather than instance level, the glut of their presence is not intolerable. Their presence is necessary to fully specify COM parameters, they can act as a reflection tie to documentation, provide editor bindings to source code, etc.. in one place, rather than java's comparatively hackish javadoc approach of differentiating/* and/**. Its new, its different, but I can accept it and already see uses for it.
However, I do not see the need for Events to be a language level construct. With the introduction of generics/templates they could be implemented as a generator/listener template with a common superclass and subscribers tracked in a static list per event template used. No extra nomenclature need be added to the language to describe what is just another pattern afterall. In the absence of generics I suppose they did the best they could, but its another case of pandering to their present programming paradigm (pardon the alliteration).
I do miss the presence of java's inner classes and either c++'s templates or some other form of constrained generics (can anyone say Eiffel?).
In fact the lack of any form of generic will probably keep me from using the language as I am a pattern junky, and templates/generics are key to avoiding a lot of cut&paste code when using similar patterns heavily.
Re:Mozilla is not dead (Was: Suck.com was right)
on
Mozilla M17 Is Out
·
· Score: 1
They didn't 'clean up and document the code' they started over from scratch after wasting almost a year messing around with the old Netscape code, but I agree they are making good progress for the scope of the project.
I was not comparing PPP and HTTP. I was comparing PPP and BXXP. BXXP provides a free form method of creating communication channels over a single serial communication channel. PPP does the same.
The comparison of BXXP and HTTP was made by the author of this article NOT BY ME, and I am quite aware that HTTP and PPP have nothing to do with one another.
As I stated, the value provided by BXXP is that it can exchange freeform metainfo. I am agreeing with you here, but READ my post before flying off the handle.
I wasn't evaluating BXXP in an HTTP context, but merely as a means of opening channels and exchanging metainformation.
With that in mind, were I a parent, I wouldn't run out and buy a Meccano set just because 'Legos are ruining your child's engineering potential', before you consider the fact that when left in a box in the basement for a few months, these things rust. In comparison, old legos just accumulate dust.
I also recall getting really sick and tired of turning that screw driver.
Besides, where are the Meccano mindstorms?
They were not within their rights to bill any more charges than the end user had authorized, period. Speaking as the former owner of a small business, you just "don't do that."
Two) I would be ok with it taking 6 calls if they hadn't claimed it would be taken care of on call 1 then proceeded to bill me for two more months, refusing to take care of either the new charges or the old ones on call 2, making me jump through hoops to talk to someone who could help me, who then proceeded to repeat this whole scenario a second time.
If I had put linux on it and violated their business model, or actually signed up after they changed their terms things would be different, but as things stand they never even informed me that they had changed terms, nor that my credit card would be charged for anything more than for the purchase of the machine itself.
It took about 6 phone calls and various threats to get my money back - which was promised to me on 3 different calls, but somehow they kept failing to follow through.
As an aside, it looks like I'll have to release CosmOS under the Mozilla Public License. I already couldn't use the GPL because of its own restrictions.
Please note the use of two distinct terms in the verbage of this clause. 'Potentially Viral Software' and 'Publicly Available Software'.
Virtually every post I have read thus far on the topic has confused the two.
First, Potentially Viral Software is defined as granting rights to distribute, use, mass-mail, and clean bird cages with Microsoft software, while requiring them to give you the source.
Second, Publicly Available Software is defined as software distributed under an open source license. Many of these licenses carry their own baggage about what they can be distributed with or linked against. This states that you cannot distribute anything which falls under this EULA with anything distributed under one of these licenses.
GCC and the Linux Kernel are both Potentially Viral Software in certain circumstances, because they fall under the GPL. If you link to them the GPL is viral, because it creates obligations for Microsoft. Therefore using this code to create a kernel driver is a no-no.
However, using GCC to compile does not convey the GPL on the resultant object code. Even though it is Publicly Available Software it does not fall under the terms of Potentially Viral Software. Linking against the Standard Library is not viral as the LGPL does NOT convey any obligation on the behalf of Microsoft. On the other hand, the resultant binary would not be distributable, because it would constitute distribution in part with Publicly Available Software.
Although, Linus has been able to, thus far, creatively interpret the GPL to allow vendor distributed binary drivers, the GPL does create obligations on code linked against it. This is the reason that the LGPL was created.
The definition of two very similar terms in such a short space creates a lot of confusion.
It is not Potentially Viral Software if you compile with GCC, because compiling with GCC does not convey the GPL upon the resultant object code. GCC is Publicly Available Software, which means you cannot bundle GCC with software covered under this EULA.
This is 'bad', but not nearly as bad as not being able to use open source tools in the development of software under this license. They are protecting themselves from 3rd party licenses.
Nothing in this license prevents you from compiling with GCC into a shared library, distributing that completely separately from your application and linking against it, but it does prevent you from distributing the aforementioned shared library with Publicly Available Software (e.g. Linux).
Although, this restriction is a nuisance, it is actually a protection they already had under the terms of many of these other licenses. They are simply stating it themselves, to preemptively prevent people from bundling this software with Publicly Available Software, which may appear to create obligations for Microsoft to which they have not explicitly agreed.
This goes a long way towards my long-standing belief that the GPL draws too firm of a line in the sand. I work almost exclusively with LGPL'd code as a result, because I can cleanly delineate what is open and what is proprietary in library sized increments.
Disclaimer: I do not work for Microsoft, and IANAL. Take this interpretation with a grain of salt.
I believe very strongly in his points regarding increasing the orthogonality of operations you let users perform, let them perform them anywhere by all means.
I agree whole-heartedly that one should try to build a mode-less interface wherever possible and that modes are the source of the majority of user error, because they force conscious thought about things that should be reflex.
I agree that 'user input is sacred' and should be preserved and that you shouldn't steal the focus away from the user midsentence.
I agree with his arguments that most popup messages are useless and should not steal the focus away from the application, especially if there is only one action you can perform (i.e. click OK) On the other hand, I am somewhat dubious about the merit of his desire for see-through overlays however. I feel that they only really result in so much clutter and the visibility of text below will make them difficult to read. This could, perhaps, be managed through some form of opacity control, but thats a lot to ask the user to use.
I also think that he hasn't done sufficient research on usability when it comes to some of his more radical proposals later on in the book.
I.E. His desire to use 'multiple selection' for everything, and the fixed scope of document tags. I think that he doesn't take into account the complex state he is making the user retain in their head in the first case and that he doesn't generalize the latter sufficiently to be useful.
However, a system based entirely on xml tags, where files are just tags in the larger system would fit his design goals nicely, and bypass this problem entirely.
All in all, I believe that I am better for having read this book, but moreso for having taken it with a grain of salt.
The real problem that I have with this book is its lack of direct applicability. The user interface he describes is so alien to current users that its not something you could graft over what they use today and expect them to pick it up in a reasonable timeframe. So you won't be building fully 'humane' windows applications any time soon.
I can't say the last time I actually saw alarm wire pricing from a telco, but in this area (Detroit) it used to be $11/end
Take that protocol and feed it into a 'proxy', for lack of a better term. The proxy then just transmits multicast UDP on a given multicast address/port and anyone on the mbone can tune in to watch. I'd assume that either the special user that the proxy uses to connect to the game has all line-of-sight filtering disabled (no pvs checking) or there is only 1 or 2 viewpoints running around for the spectators which are rebroadcast from the multicast proxy.
I've done a lot of work on adapting gaming to multicast protocols. I even have a quake1 multicast proxy client/broadcast server and broadcast client/proxy server pair (which I'd originally written as an aimbot and expanded), from a year or so back, which I have used to test this successfully. This is about the most rediculously simple use of multicast I've yet seen.
The problem is of course th fact that in order to view the stream you have to be connected to the mbone, or they may use the protocol only at conventions/large gaming events to allow spectators at the event to watch from within the game, without disturbing the contestants and without sending the games out over the general Mbone.
Note the RFC for ECN does not even enter into this. They should just silently pass a packet with that bit set along like any other.
Its not so much that Linux is on the bleeding edge, its more that said router programmers didn't RTFM.
Isn't it lovely how if you boycott them, it strengthens their argument about the economic impact of copying technologies, even though it is not the copying technologies, but their reactions to those technologies which contribute to the lack of desire to purchase CDs for some people (well, me at least).
P.S. I'm a cultural luddite. I don't buy CDs and I don't watch TV, but I do (yes, I'm a hypocrite) buy DVDs. Arrgh I can't escape. Unfortunately there does not seem to be any decent independant movie content and nothing in sight.
In his defense, while the 3d acceleration may not help the rendering engine, it sure as hell can help out the modeling portion. Nothing sucks worse that turning your model, or pulling a vertex out of place and waiting for the scene to redraw, over and over.
The Playtpus SSD doesn't do much for me. My goal would be to speed system recovery in the case of someone kicking out the plug without going to the extremes of the EROS project, and without doing the damage to file system performance needed for conventional journaling file systems.
Linux has not supported key security accreditation standards. Every member of the Windows NT family since Windows NT 3.5 has been evaluated at either a C2 level under the U.S. Government's evaluation process or at a C2-equivalent level under the British Government's ITSEC process. In contrast, no Linux products are listed on the U.S. Government's evaluated product list.
Pardon me, but I thought Windows NT was only C2 certified on a particular old Compaq model with no network card and the floppy drive glued shut. Security certifications are only available for given hardware/software configurations. Every time they release a patch or switch CPUs or peripherals the process begins again.
Now all we really need is a IOS-like shell for uClinux-cisco. iosh anyone?
Think about it, a watch that could talk NTP (admittedly over IrDA), you'd never have to set your watch again. Though I have to admit the display is a little too small to DO much with.
This is the curse of the non-dot-com domains: Always to be forgotten.
3dfx used very similar strong arm tactics against virtually all the other manufacturers of 3d graphics cards when 16 bit graphics (to which virtually all of 3dfx's myriad patents apply) were in vogue. So I'm all for seeing them get slapped around a little with their own tactics.
This is not a case of big evil NVIDIA picking on poor defenseless 3dfx, but more like them finally turning the tables. Go NVIDIA!
*prepares to be lambasted*
Look up Lojban, which is very similar to what you describe. Esperanto is also around, but well, Lojban is cooler and more suited to electronic parsing. Hideous punctuation though. ;)
In theory I could quantum tunnel to the moon and die of asphyxiation, but I have not been able to do so yet. ;)
So whats the big deal? That double battery life requires more than just swapping a chip? I just don't like seeing Transmeta taking flak for something that I don't recall them ever saying in so many words.
Re-read the post. I did say public class per file. ;)
my_int bar(my_int x) {
x+=1;
return x;
}
my_int foo() {
my_int y = 2;
bar(y);
return bar(y);
}
foo returns different results depending on whether or not my_int is a struct or a class. You cannot tell if modifying the object will modify the original or not without looking for the original class definition which can be buried pretty much anywhere in c#, because it has abandoned the rigid formalism that Java used of one public class per file and the name of the file matching the class.
Mind you, Microsoft will probably sell a nice Visual Studio plugin which looks up the source definition and shows you if its a class or struct, and which allows you to hyperlink to the definition (witness MSVC and VB), but I'm examining the language, not Microsoft's tools.
I disagree with the author of this article about the presence of Attributes. Attributes (as ugly as they are) create an avenue to extend the metainformation provided by the language. Since the attributes reside at the class rather than instance level, the glut of their presence is not intolerable. Their presence is necessary to fully specify COM parameters, they can act as a reflection tie to documentation, provide editor bindings to source code, etc.. in one place, rather than java's comparatively hackish javadoc approach of differentiating /* and /**. Its new, its different, but I can accept it and already see uses for it.
However, I do not see the need for Events to be a language level construct. With the introduction of generics/templates they could be implemented as a generator/listener template with a common superclass and subscribers tracked in a static list per event template used. No extra nomenclature need be added to the language to describe what is just another pattern afterall. In the absence of generics I suppose they did the best they could, but its another case of pandering to their present programming paradigm (pardon the alliteration).
I do miss the presence of java's inner classes and either c++'s templates or some other form of constrained generics (can anyone say Eiffel?).
In fact the lack of any form of generic will probably keep me from using the language as I am a pattern junky, and templates/generics are key to avoiding a lot of cut&paste code when using similar patterns heavily.
They didn't 'clean up and document the code' they started over from scratch after wasting almost a year messing around with the old Netscape code, but I agree they are making good progress for the scope of the project.
The comparison of BXXP and HTTP was made by the author of this article NOT BY ME, and I am quite aware that HTTP and PPP have nothing to do with one another.
As I stated, the value provided by BXXP is that it can exchange freeform metainfo. I am agreeing with you here, but READ my post before flying off the handle.
I wasn't evaluating BXXP in an HTTP context, but merely as a means of opening channels and exchanging metainformation.