Domain: loria.fr
Stories and comments across the archive that link to loria.fr.
Comments · 73
-
Re:no examples of innovationAha, here's a somewhat more informative TeX history link.
It appears that there were earlier releases of TeX in the 1982-1984 period, although few traces of them remain. It also appears that the 1986 release obsoleted most of the earlier work.
There is a little information on the licensing in 1986, though I couldn't find anything earlier that addresses the question. This source says: We are frequently asked if it is proper for the recipient of a Unix TeX tape to give Unix TeX to other sites. Since Donald Knuth has released the TeX programs as free public-domain software, it is quite proper...
This demonstrates that TeX in 1986 was free software, but leaves open the question about earlier distributions.
Tim
-
Re:no examples of innovationAha, here's a somewhat more informative TeX history link.
It appears that there were earlier releases of TeX in the 1982-1984 period, although few traces of them remain. It also appears that the 1986 release obsoleted most of the earlier work.
There is a little information on the licensing in 1986, though I couldn't find anything earlier that addresses the question. This source says: We are frequently asked if it is proper for the recipient of a Unix TeX tape to give Unix TeX to other sites. Since Donald Knuth has released the TeX programs as free public-domain software, it is quite proper...
This demonstrates that TeX in 1986 was free software, but leaves open the question about earlier distributions.
Tim
-
Pick the right tool for the right job!
Look, folks, object orientation is just one tool of many in the big box of software tools. Use it when appropriate, use something else when it isn't. This guy rants rants about OOP basically on three grounds, all of which are straw-man agruments:
- OOP doesn't live up to the hype of its most zealous proponents (What does?)
- When you do stupid things with OOP, you get stupid results. (What did you expect?)
- Contrived, obviously-false statements about OOP are not true. Examples taken from the document: "Myth: Only OOP has automatic garbage collection", "Myth: Only OO databases can store large, multimedia data", "Myth: Components can only be built with OOP", and so on. These aren't legitimate myths widely believed by folks who use OOP; these are straw men propped up so that he could knock them down.
The reality is that OOP is a good tool for solving a lot of common problems. It's also a lousy tool for solving a lot of other common problems. When OOP isn't the right tool, don't use it.
Just use the right tool to begin with. When it comes to programming paradigms, there are lots of tools in box:
- rule based
- procedural
- functional
- object oriented
- logic based
- contstraint based
- declarative (often in terms of w/ functional and logic based)
Use the right tool for the job. You'll be glad you did. (And you won't have to put up a web site just to rant about your bad experiences with using a hammer to place dry-wall screws.)
-
One word...Inlining. Some compilers, which use languages more amenable to analysis than C++ (ie. almost any other language), are able to inline all those itsy bitsy functions so that you can write code in an OO way and still have good performance.
This one does that and lots of other stuff. It generates some great code.
--
Patrick Doyle -
Yes, there *are* other OO languages
I get tired of hearing about the "fight" between C, C++, and Java (and now C#), as if those are the only three programming languages in existence.
I concur. I'm especially tired of hearing comparisons between C++ and Java, as though they were the only object oriented languages around. I'm actually quite surprised that Eiffel has not seen more widespread acceptance in the OO developer community (www.eiffel.com is the "official", Bertrand Meyer-endorsed home page of Eiffel, but I personally prefer SmallEiffel, because it's free). Eiffel is a superbly well-designed object oriented language, and there are compilers available for pretty much every platform under the sun. The "compilers" are really just Eiffel to C translators, which then pass the resulting C code to a C compiler. The result is very efficient programs (probably not as efficient as actual C code would be, but certainly more efficient than Java or C++).
An excellent book on the subject is Objects Unencapsulated, by Ian Joyner. It's the only book I've ever read that does a blow-by-blow comparison of C++, Java, and Eiffel. It's pretty dry reading though, unless you're heavily into the OO stuff (as I am).
Not to malign Java, there are some good ideas with that language, but for a pure OO language, I've yet to see anything more impressive than Eiffel.
-- -
Re:I wish Java didn't mean two things
-
Re:I wish Java didn't mean two things
-
Re:eiffel
When was the last time you looked? Perhaps things have changed since then. The GNU Eiffel compiler, SmallEiffel, in particular, has a reputation for producing small, fast binaries.
-
Re:Generic Programming
Ada generics are completely type safe. Indeed, type safe generics are possible, if done right. Check out GNU Ada. By the way, GNU Ada can compile to Java byte code. It is also worth looking at GNU Eiffel which also provides type safe generics and the ability to compile to Java byte code.
-
Re:To be blunt, CVS sucks
Anyone who resorts to mucking-around in CVSROOT manually needs to read the FAQ.
-
A GNU Eiffel compiler exists!!If you want to try Eiffel, try SmallEiffel. It's a GPL-ed Eiffel compiler:
http://www.loria.fr/projets/SmallEiffel
...richie -
Re:some people complain, some people solve problem[...] most people who make these decisions are simply not going to build a product based on a language that comes from a small vendor. They would be betting many man-years of effort on the success of that one small vendor and be at the complete mercy of that company's future pricing policies and responsiveness.
In fact there are three small vendors today who sell Eiffel compilers and there is a GNU Eiffel compiler called SmallEiffel.
It's not clear at the moment whether the GNU Eiffel compiler has come too late.
...richie -
Re:Interesting stuff
what language is all of this done in? Ada would be my guess, or is there something even better than that?
I doubt that it's in Ada; I think the software predates Ada.
As for something better: in a word, Eiffel.
Unfortunately, there's an old but true saying:
"Make something foolproof, and only a fool will want to use it."
Eiffel is an amazingly clean, simple, and straightforward object-oriented language. It removes both the ability and the need for clever coding hacks, thereby shifting most of the development effort to software design rather than implementation. Most "programmers" aren't designers, though, and they scream bloody murder that they can't code something really cool like
while (*to++ = *from++);obOSS: A GPL'ed Eiffel compiler is available at http://www.loria.fr/projets/SmallEiffel/.
-
Maybe Eiffel?Well, we have made sure that Freenet is compatible with Kaffe and other similar Open Source Java efforts, and we will always ensure that it remains compatible with Open Source Java implementations.
Well, I can understand the choice of Java. But if you want to write a server in a language other than C++ or Java, you might consider Eiffel.
Eiffel definition is controlled by a user organization (NICE), there is GNU Eiffel compiler in addition to several commercial ones. Plus Eiffel is very portable.
The only problem with Eiffel that there aren't as many libraries as there are for Java.
...richie -
Eiffel Resources and LinksEiffel is one of the top real Object Oriented languages availble today. Bertrand Meyers's breathtaking and monumental book Object Oriented Software Construction lays out a systematic rational for what the requirements are for an object oriented language. Eiffel is a language implemented to meet those requirements. Support for concepts such as ``Design by Contract'' insure that software implemented in Eiffel is correct. Garbage collection, multiple inheritance, preconditions, postconditions, class invariants are other features that contribute to robust software development under Eiffel.
GNU's implementation is called SmallEiffel and runs on Linux and many other operating systems. Bertrand Meyer's ISE Eiffel which offers the ease of Delphi development is available for Windows and Linux. It is a gem. A great resource for those interested in Eiffel is the online Eiffel Liberty Journal.
-
EiffelEiffel is one of the top real Object Oriented languages availble today. Bertrand Meyers's breathtaking and monumental book Object Oriented Software Construction lays out a systematic rational for what the requirements are for an object oriented language. Eiffel is a language implemented to meet those requirements. Support for concepts such as ``Design by Contract'' insure that software implemented in Eiffel is correct. Garbage collection, multiple inheritance, preconditions, postconditions, class invariants are other features that contribute to robust software development under Eiffel.
GNU's implementation is called SmallEiffel and runs on Linux and many other operating systems. Bertrand Meyer's ISE Eiffel which offers the ease of Delphi development is available for Windows and Linux. It is a gem. A great resource for those interested in Eiffel is the online Eiffel Liberty Journal. In my opinion there are very few languages which offer direct support for quality software engineering. Ada, Sather, and Eiffel would certainly be near the top of my list.
-
Re:OSS distributed computing projectsLook harder and accept that the project will be more obscure. The various related number theory projects are open source. Look at the ECMNET or Mersene page for ideas. Finding another factor to a Cunningham Number may take 6-12 CPU months, but it does happen.
You will not find servers or fame, in part because these attract script kiddies and vandals. But it does use those wasted CPU cycles.
-
Re:"A fool with a tool is still a fool"
I've seen Eifel and it's a nice programing language. Well I've never written code for it because it's proprietery and it isn't cheap.
For a GPL'ed Eiffel implementation, go here. Precompiled versions are available for Windows, Mac (PowerMac & 68K), HP-UX, Amiga, OpenStep, and oh yes, Linux (RPM and glibc2).
-
Re:Not quite
So you would have us go back to
...shudder... COBOL? Excuse me while I go into spasms.
Seriously though, OOP doesn't mysteriously generate bugs. It's poor programming practice that does it. Go take a look at Eiffel, a OOPL that forces you to program well. It even has a GNU compiler. -
Some pointersI'd reccomend the CVS Bubbles page http://www.loria.fr/~molli/cvs-index.html as well as the Users Manual written by Per Cederqvist et al, available under the documentation section. Some of the stuff is a little out of date, but it isn't too bad overall.
- Mike
-
GNU Eiffel can emit Java bytecodes
Yes, Byteheads, it's now time for GNU Eiffel.
-
need more using software engineering language
Sigh. Too bad more aren't using a software engineering OO language since there is now such a rich choice available under the GNU license: Eiffel, Ada95, Sather (among the safest). Even Modula3, Smalltalk, and Java are worthy of consideration. Here's some URLs,
GNU Eiffel
GNU Ada95
GNU Sather -
Language flame wars considered harmfulEach language is based on a certain model and shines where that model's assumptions are true.
C++ is unbeatable where the criteria are upward compatibility from C and imposing absolutely zero cost for unused features.
Java shines at exporting executables across heterogeneous networks.
Perl raises the complexity of what may be reasonably done with ad hoc, quick and dirty solutions. And although I haven't used them, it's OO capabilities look like good steps in the right direction.
The same is true of other languages. Each can be useful. Each can be misused. Attacks and flaming don't accomplish much besides temporary emotional gratification to the writer.
All that said, I recommend taking a look at Eiffel. Compared to all other languages I know, Eiffel is the only commercial language that gets static typing exactly right, implements multiple inheritance powerfully and flexibly, provides generic and constrained generic classes without multiple copies of code, supports design by contract in the language itself, and has a coherent OO approch to exception handling. Here are some links:
SmallEiffel The GNU Eiffel Compiler compiles to C and JVM.
Eiffel Forum Eiffel Archive with free software and lots of links.
Eiffel Liberty Journel Lots more links to all sorts of good OO references
Interactive Software Engineering Home page of the company that introduced Eiffel, with hundreds of pages of scholarly OO papers and EiffelBase, the open source library with 140 classes and thousands of methods