Since no one else has mentioned this, why did they choose this company instead of the Artemis project, which has the same goal and has been around far longer?
Classical music and any of the early 20th century music that do not fall under copyright due to expiration. Many people download MP3 of those categories of music.
I do pay attention. Whitespace is also a syntatic element in Perl, Python, and nearly every other programming language in existence save Brainf***.
The indentation required in Python is very flexable, anyway, and that is the only whitespace-sensitive portion of it. Why don't you want to indent your code?
Makefiles are whitespace sensitive too. Does that make them evil?
If the code spends most of its time executing system calls, why not use something easier and faster to develop in than Java, such as Python, Perl, Tk, or Pike?
pgcc produces very fast code, even *gasp* on non-intel platforms. It sometimes generates internal compiler errors, but in this case, simply send in a bug report and either reduce the optimizations or do what you were trying to do another way.
Also, why are portability and performance manually exclusive? The x86 gcc backend is certainly not suitable for a ppc, and, although large portions of the code are shared, the backend for each processor supported are not, and should be able to optimize heavily for that processor, in the same way that a JVM probably optimizes for the platform it is running on. Much of the optimization can also be done by the frontend, before intemediate code is generated; this does not rely much on the specific backend (and much of the system-specific things can be done by the backend). If this is not the case, and the frontend needs to optimize for one specific processor, there is always the -m option.
Actually, in modern processors, the trig asm ops are faster than a lookup table, and have more precission. To get the accuracy required today with a lookup table, you would have to use megabytes of memory, which is clearly unacceptable.
You are correct in that it relies upon the implementation, yes.
He really shouldn't have used any standard library functions at all (except for output).
double prod(vec* a, vec* b){ return a->x*b->x+a->y*b->y+a->z*b->z; }
be even faster, since it involves no loops at all? You don't have variable-length vectors anymore, but are you going to do dot products in four dimensions, or two?
First, such use is not covered by trademark law --- that basically states that you can't stamp your own product with that logo. It is covered under copyright law, and, under copyright law, something called *fair use* exists. One can quote sections of it, use it in identificaiton, etc. As for trademarks, they can be used with a (r) next to them, c.f. the/. apple icon.
Puh-lease yourself.OO generally requires an OO language, anything else is a hack. There *is* a functional difference between the C code and the C++ code --- The C code requires assignment of the function pointer every time the class is created. Also, since the this pointer is passed implicitly in C++, the compiler can optimize it away by storing it in a register or other high-speed storage location, whereas in C, it must be passed the same way all other pointers are.
Also, how the heck do you plan to handle virtual functions? In your create function, you could create a struct with that struct as its first member, yes, but then what happens when you try to use the pointer passed to it? You must cast it for a derived class. Ugly hack.
Your lack of knowledge is evidenced by your somewhat misleading C++ code.
class widget { public: void open();// Note that in C++ void close();// empty parenthases // mean (void). Also, // try doing comments // like this in C. };
private:// Yes, encapsulation is a *good* thing AnimationType m_Animation; Timer m_Timer;// Yes, *class member*. };
Templates and operator overloading are fine *when used properly*. If you complain about templates in C++, then one can complain about casting in C. Both have high potential for abuse. C++ doesn't force operator overloading upon you, either.
Encapsulation of class members is also impossible in C without some compiler trickery. Don't complain that encapsulation isn't neccecary --- every time you have used a static global variable or static function, you have used encapsulation.
You make an unfair argument by equating one of the most basic features of C++ with the C version, and then attacking an advanced feature of C++ that C could not possibly implement. I suspect you dislike these things because they cannot be implemented in C (Without something like CFront, anyway.).
>:Linux is not a known word at my school. I think one of the big reasons is, >:it's free. Usually, free things suck. The free gifts you get for calling >those:800 #'s, ya know... those shitty ones. They don't understand that in >this:case, free IS better, free IS free, free in this case == stability, >something:we don't have now. Currently for the whole district, we pay about >$90 for:each copy of Windows, which totals to over $50,000 for the whole >district. We:have a site license for a security program, Fortress which is >about $10 a:copy, Norton Antivirus, $15 a copy, MS Works and MS Office, MS >Office is $50:for each machine. When you total that up (which isn't all of it >either..) you:easily get probably $500,000+ in SOFTWARE ALONE. The machines >are pos:E-Machines, at $600 a peice. Times that by a whole school district, >we won't:go there. So why don't they do Linux when it's free? Star Office, >when it's:free? Security wise, you don't need outside programs... >: >:It's all because of support. There is no support, according to my school. >:They want to be able to phone someone up, unless they BUY RH or some varient, >:they don't get that. It's all really just a support issue. --
Do you, by any chance, live on Long Island? My school, Farmingdale High School, has a setup surprisingly similar to yours, with Windows, Fortress, Office, NAV, etc. etc. The only problem is that the setup does not work properly. The school in increadibly lax in security, and computers have repeatedly been comprimised. In a lab of twenty, three of them are without boot sectors on their hard drives, five have corrupt registries, and the most important one, which is the sole computer with a Zip drive, BSODs, usually fatally, every five minutes due to corrupt DLLs and vxds. This does not count the fact that virtually every computer's "preferences" are changed on a daily basis, usually to Comic Sans MS for the default font, yellow-on-white, and strange Word settings that inhibit normal use, or at least require precious time to access. Network access is over some strange combination of IPX/SPX and TCP/IP, and the NT server essentially gives everyone administrator access because the one sysadmin is either too busy or too indifferent to set up proper security. The network itself simply does not work, on a random basis for each computer, and the connections are always tenous with at least 50% packetloss (over IP, anyway.) The users in my school are increadibly illiterate; most of them don't even know what the network is, or what the error message "No domain server available" means, and only complain that "No H: drive is available" to save their work on *after* they have worked on it for forty minutes. My school makes no effort to education them on their inner workings, only how to type in M$ Word. Most users in my school think regedit is "too technical". At least my local computer repair establishment has a great deal of business, despite the fact that it charges exhorbinant rates. In my work for the yearbook and school newspaper, articles are often mangled or outright deleted, but my proposal for passwords was called "overkill" and "too complication". And one last thing: Each user has their own account. That is good. The only problem is that each account's login name is the students' student IDs, the password is the students' initials, and the students generally use the public directories anyway.
Do you have any ideas on how to solve these problems? I find it disgusting that my school wastes a perfectly good PIII-500 server with 256mb of memory and twenty computers with 200mhz processors, sound cards, four gigabyte disk drives, etc. on this crap when one of those workstations acting as a server for thin clients would better server my school's needs and be more secure at the same time.
I don't know about your school, but my school basically implies that the computer and a Micro$oft OS are inseperable. Besides, if a person is so inept that he or she can't learn one word processing program afterlearning another, then I would question whether that person has anything useful to put into those programs.
Even if the school doesn't teach anything other than that, it should at least inform students that there are alternatives, or educate them on the difference between an operating system, an application, and the underlying hardware. In the introductory computing class, a teacher was quoted as saying "Now, this loads your file into the screen." Then again, I shouldn't expect too much. This is a school that hires a basic electronics teacher that doesn't know to build a transistor amplifier.
So why foster that? There are many programs that can read Word document files, and even Word can be coerced into saving as something readable by nearly everything yet retaining most of the formatting, i.e., rtf and HTML (even in M$-perverted form). Plus, having Linux as a server doesn't mean the clients can't run Word --- ever hear of Samba?
No, just for use on win32. Qt doesn't restrict commercial development under *BSD/Linux/etc., it restricts *closed* development in the same sense that the GPL does. Like the GPL, if you use Qt, your program must be open-source.
Info works independantly of Emacs.
Ahhhhhhhhhhh, I see. Are those called anonymous methods?
C++ *does* have polymorphism.
Since no one else has mentioned this, why did they choose this company instead of the Artemis project, which has the same goal and has been around far longer?
Classical music and any of the early 20th century music that do not fall under copyright due to expiration. Many people download MP3 of those categories of music.
Why not just dump it in a subduction zone? After all, the Earth's core is radioactive anyway.
I do pay attention. Whitespace is also a syntatic element in Perl, Python, and nearly every other programming language in existence save Brainf***.
The indentation required in Python is very flexable, anyway, and that is the only whitespace-sensitive portion of it. Why don't you want to indent your code?
Makefiles are whitespace sensitive too. Does that make them evil?
Thanks for the information. I had never heard of this before.
If the code spends most of its time executing system calls, why not use something easier and faster to develop in than Java, such as Python, Perl, Tk, or Pike?
C/C++ has dynamic optimization too. It has for a while now; try using the -pg flag sometime and gprof on the generated file. You will be amazed.
pgcc produces very fast code, even *gasp* on non-intel platforms. It sometimes generates internal compiler errors, but in this case, simply send in a bug report and either reduce the optimizations or do what you were trying to do another way.
Also, why are portability and performance manually exclusive? The x86 gcc backend is certainly not suitable for a ppc, and, although large portions of the code are shared, the backend for each processor supported are not, and should be able to optimize heavily for that processor, in the same way that a JVM probably optimizes for the platform it is running on. Much of the optimization can also be done by the frontend, before intemediate code is generated; this does not rely much on the specific backend (and much of the system-specific things can be done by the backend). If this is not the case, and the frontend needs to optimize for one specific processor, there is always the -m option.
Actually, in modern processors, the trig asm ops are faster than a lookup table, and have more precission. To get the accuracy required today with a lookup table, you would have to use megabytes of memory, which is clearly unacceptable.
You are correct in that it relies upon the implementation, yes.
He really shouldn't have used any standard library functions at all (except for output).
I hate to be pedantic, but wouldn't:
struct vec { double x; double y; double z; double w;};
double prod(vec* a, vec* b){
return a->x*b->x+a->y*b->y+a->z*b->z;
}
be even faster, since it involves no loops at all? You don't have variable-length vectors anymore, but are you going to do dot products in four dimensions, or two?
First, such use is not covered by trademark law --- that basically states that you can't stamp your own product with that logo. It is covered under copyright law, and, under copyright law, something called *fair use* exists. One can quote sections of it, use it in identificaiton, etc. As for trademarks, they can be used with a (r) next to them, c.f. the /. apple icon.
Yes, *but*, unlike in C++, the pointer passed to these objects would be a pointer to the base, unless you casted.
Puh-lease yourself.OO generally requires an OO language, anything else is a hack. There *is* a functional difference between the C code and the C++ code --- The C code requires assignment of the function pointer every time the class is created. Also, since the this pointer is passed implicitly in C++, the compiler can optimize it away by storing it in a register or other high-speed storage location, whereas in C, it must be passed the same way all other pointers are.
// Note that in C++ // empty parenthases
// mean (void). Also,
// try doing comments
// like this in C.
// Overrided // Overrided
// Yes, encapsulation is a *good* thing // Yes, *class member*.
Also, how the heck do you plan to handle virtual functions? In your create function, you could create a struct with that struct as its first member, yes, but then what happens when you try to use the pointer passed to it? You must cast it for a derived class. Ugly hack.
Your lack of knowledge is evidenced by your somewhat misleading C++ code.
class widget {
public:
void open();
void close();
};
Try doing *this* in C:
template class AnimationWidget: public Widget, private
DisplayOfAnimation
{
public:
virtual void Tick();
virtual void DrawWidget();
void SetAnimation(AnimationType* t);
AnimationType* GetAnimation();
private:
AnimationType m_Animation;
Timer m_Timer;
};
Templates and operator overloading are fine *when used properly*. If you complain about templates in C++, then one can complain about casting in C. Both have high potential for abuse. C++ doesn't force operator overloading upon you, either.
Encapsulation of class members is also impossible in C without some compiler trickery. Don't complain that encapsulation isn't neccecary --- every time you have used a static global variable or static function, you have used encapsulation.
You make an unfair argument by equating one of the most basic features of C++ with the C version, and then attacking an advanced feature of C++ that C could not possibly implement. I suspect you dislike these things because they cannot be implemented in C (Without something like CFront, anyway.).
Interesting.
Ok, then, what about LaTeX? It still works with any editor. (Personally, I use LaTeX for everything).
>:Linux is not a known word at my school. I think one of the big reasons is, :800 #'s, ya know ... those shitty ones. They don't understand that in :case, free IS better, free IS free, free in this case == stability, :we don't have now. Currently for the whole district, we pay about :each copy of Windows, which totals to over $50,000 for the whole :have a site license for a security program, Fortress which is :copy, Norton Antivirus, $15 a copy, MS Works and MS Office, MS :for each machine. When you total that up (which isn't all of it :easily get probably $500,000+ in SOFTWARE ALONE. The machines :E-Machines, at $600 a peice. Times that by a whole school district, :go there. So why don't they do Linux when it's free? Star Office, :free? Security wise, you don't need outside programs...
>:it's free. Usually, free things suck. The free gifts you get for calling
>those
>this
>something
>$90 for
>district. We
>about $10 a
>Office is $50
>either..) you
>are pos
>we won't
>when it's
>:
>:It's all because of support. There is no support, according to my school.
>:They want to be able to phone someone up, unless they BUY RH or some varient,
>:they don't get that. It's all really just a support issue. --
Do you, by any chance, live on Long Island? My school, Farmingdale High School,
has a setup surprisingly similar to yours, with Windows, Fortress, Office,
NAV, etc. etc. The only problem is that the setup does not work properly. The
school in increadibly lax in security, and computers have repeatedly been
comprimised. In a lab of twenty, three of them are without boot sectors on
their hard drives, five have corrupt registries, and the most important one,
which is the sole computer with a Zip drive, BSODs, usually fatally, every five
minutes due to corrupt DLLs and vxds. This does not count the fact that
virtually every computer's "preferences" are changed on a daily basis, usually
to Comic Sans MS for the default font, yellow-on-white, and strange Word
settings that inhibit normal use, or at least require precious time to access.
Network access is over some strange combination of IPX/SPX and TCP/IP, and the
NT server essentially gives everyone administrator access because the one
sysadmin is either too busy or too indifferent to set up proper security.
The network itself simply does not work, on a random basis for each
computer, and the connections are always tenous with at least 50%
packetloss (over IP, anyway.) The users in my school are increadibly
illiterate; most of them don't even know what the network is, or what the
error message "No domain server available" means, and only complain that "No
H: drive is available" to save their work on *after* they have worked on it
for forty minutes. My school makes no effort to education them on their inner
workings, only how to type in M$ Word. Most users in my school think regedit
is "too technical". At least my local computer repair establishment has a
great deal of business, despite the fact that it charges exhorbinant rates. In
my work for the yearbook and school newspaper, articles are often mangled or
outright deleted, but my proposal for passwords was called "overkill" and "too
complication". And one last thing: Each user has their own account. That is
good. The only problem is that each account's login name is the students'
student IDs, the password is the students' initials, and the students
generally use the public directories anyway.
Do you have any ideas on how to solve these problems? I find it disgusting
that my school wastes a perfectly good PIII-500 server with 256mb of memory
and twenty computers with 200mhz processors, sound cards, four gigabyte disk
drives, etc. on this crap when one of those workstations acting as a server
for thin clients would better server my school's needs and be more secure at
the same time.
I don't know about your school, but my school basically implies that the computer and a Micro$oft OS are inseperable. Besides, if a person is so inept that he or she can't learn one word processing program afterlearning another, then I would question whether that person has anything useful to put into those programs.
Even if the school doesn't teach anything other than that, it should at least inform students that there are alternatives, or educate them on the difference between an operating system, an application, and the underlying hardware. In the introductory computing class, a teacher was quoted as saying "Now, this loads your file into the screen." Then again, I shouldn't expect too much. This is a school that hires a basic electronics teacher that doesn't know to build a transistor amplifier.
So why foster that? There are many programs that can read Word document files, and even Word can be coerced into saving as something readable by nearly everything yet retaining most of the formatting, i.e., rtf and HTML (even in M$-perverted form). Plus, having Linux as a server doesn't mean the clients can't run Word --- ever hear of Samba?
Many open-source products do precisely this, e.g., Qt.
No, just for use on win32. Qt doesn't restrict commercial development under *BSD/Linux/etc., it restricts *closed* development in the same sense that the GPL does. Like the GPL, if you use Qt, your program must be open-source.
True, but at least it's better than nothing, especially for games.
He might mean something like the GPL, where it's illegal to distribute in closed-source form. Perhaps he equates that with "commercial purposes".
You are welcome to try.