I have on my hard drive at home a half-dozen documents that fall into the category of "standard Word documents", which is to say, they're the kind of documents you'd see on the "average" corporate network.
Even Word sometimes chokes and dies on them.
My point is, when I see "import Word documents", I can't help but think, "But what kind of Word documents?". I got burned too many times trying to convince my officemates to go away from MS and Office. Those documents are now a shrine for me: parse and display these, and you've won. Otherwise, don't even try to claim you can import Word.
AbiWord has a Bugzilla. If you create a bug on this bugzilla and attach the offending documents, someone will look at the bug; there's a good chance that the bugs will be fixed in short order.
If you don't, well, it's awfully difficult to fix an unreproducible bug.
No equations in the forseeable future. But, we're accepting patches. If you just send a patch to abiword-dev[AT]abisource.com, it will most likely be committed that day.
Tables and footnotes/endnotes will be in 1.2. We are overhauling the layout engine to support them.
Tables are nontrivial to implement correctly. Currently, if you really want tables, you can simulate them using tabs and over/underlining.
I started implementing endnotes[1] a while ago, but I got distracted by real life. They're not that hard, though, and once we have a new and more powerful layout engine, footnotes and endnotes should be fairly easy to implement.
[1] Footnotes go at the bottom of each page; endnotes go at the end of each section.
Re:is there anything like this coming out??
on
AbiWord 1.0.1 Released
·
· Score: 5, Informative
I didn't include it in the story, but here's our AbiWord 1.0.1 release announcement.
The AbiWord team is proud to announce the release of AbiWord version 1.0.1, a free-software Word Processing program. More than three years in the making, AbiWord is a reliable, cross-platform word processor with many powerful features.
AbiWord aims at robust inter-operability with existing products, including Microsoft Word(R), Corel WordPerfect(R), and others. AbiWord's goal is to incorporate the most useful features of these competing applications without the fluff, bloat, or slowness that generally accompany them.
Translations and spell checking are available for more 30 different languages. An English Language Thesaurus for use within AbiWord can also be freely downloaded.
We have not yet implemented tables or footnotes. Tables and footnotes are the first priority for our next development phase. We have already made impressive progress toward this and other new features.
AbiWord is available for Linux and other Unix variants, Windows, Mac OSX and QNX. You can learn more about AbiWord from our website at http://www.abiword.com/. AbiWord can be downloaded from http://www.abiword.com/download/.
AbiWord was initially developed by SourceGear Inc.; today, AbiWord development has been continued by a worldwide team of volunteer developers. AbiWord is free software available under the GNU General Public License.
The AbiWord team can be contacted via email at: abi@abisource.com.
[plam@delta plam]$ finger s-madnick@mit.edu [mit.edu]
name: Madnick, Stuart E ... department: School Of Mgmt
title: J N Maguire Prof Of Info Tech
url: http://mit.edu/smadnick/www/home.html
If he was really a CS prof, it would say instead: department: Elec Eng & Comp Sci
title: Professor
Thus, it still requires IE, and if that keeps the normal Kazaa from working under WINE, this version will be no different.
If you have a real Windows install, then WINE will run Kazaa (more or less) properly; the display is somewhat incorrect and it crashes from time to time (but, hey, that's Windows, eh?). I guess that WINE without Windows won't run KaZaA.
That's not the way patents work. A patent grants you the exclusive right to use your invention for 17 years. You may or may not choose to enforce your patent, but unlike a trademark, this does not affect your rights to enforce the patent in the future. Also, you can enforce patents on whoever you want and offer whatever terms you want to people who license the patent; you needn't be fair about it at all.
In fact there's a business model which involves buying older patents which have not been enforced, and extorting money from people who have (usually unintentionally) implementing the invention in the patent.
No, this is incorrect. OTP is secure in the following fashion:
Consider aaaaa as an OTP encryption of something. Then, hello and quack are equally good decryptions, and there's nothing that tells you what the original message was.
$8.75 is the standard pay for a Undergrad Research
Opportunities Program appointment at MIT. It's always seemed
rather low to me. If you have a professor paying for your UROP appointment,
then he can give you more money, and I think a lot of profs will do that.
Keep in mind that this is undergrad student pay, and can be done during
the term. Plus you get to work with researchers, etc etc.
Of course not! The bathroom server is run by undergrad students paying $26k tuition per year, plus $3300 in rent for Random House -- but that rent does include the internet connection.
I also don't understand what the purpose of keeping an OS project secret would be in an academic enviroment. Remember publish or perish?
Actually there's a whole bunch of reasons which make it hard to deal with a large system in an academic environment. Publish or perish is certainly a major contributor. But large systems just have so much icky overhead to make them work that, in terms of work-to-reward ratio, it's almost never worth it to do a complete system. Or feasible; we don't have enough people to write large quantities of production code. Successful systems projects (wrt an academic metric for 'successful'), for instance, the self-certifying file system use parts of other systems that people have built. It's a lot easier that way, and it's really useful when those other systems are free software.
Of course, there are major minuses to not having a system you can actually use day-to-day. A lot of the microkernel research, I'm told, was done by people who didn't 'eat their own dogfood'. They would boot up the system, run their benchmarks, then shut it off. This didn't capture problems which occur only after a few days of uptime.
... which is fishy, because I'm sitting here in my office on the sixth floor of the Laboratory for Computer Science, and the operating systems dudes are on the fifth floor. There is also no mention of Cesium on the projects page.
I couldn't actually read the original page, slant-six being slashdotted and all, but it sure doesn't sound like an LCS initiative. In fact I don't see any mention of any such operating system on the web.
you kids with your gigahertz and flash and dsl and tcp/ip don't know anything about zmodem or slurp or busy signals.
Actually, zmodem is great when I just have a quick file I want to move from a Windows machine and all I have is TTSSH. I'm sure there's got to be a better way, but I haven't thought of it yet. As it is, I use rz on the Linux machine and send the file off.
I strongly agree that the particular language used is irrelevant; experience with large projects is very relevant.
I noticed your alum.mit.edu address. MIT still teaches 6.001 (the introductory CS course) in Scheme, but now 6.170 (software engnieering) is done in Java, not in CLU; Liskov has correspondingly updated her textbook to use Java instead.
I don't actually know much about other MIT classes in Course VI (Electrical Engineering and Computer Science), since I don't have to take classes. But it's impossible to be at MIT, in course VI, and not e.g. see some 6.001 course materials on the desk of some guy in your research group who happens to be a TA.
Java doesn't dump core, so a debugger is not used as often. But you wouldn't know that. You can't even spell C.
While Java does not dump core, it can throw a NullPointerException and print a stack trace out. It's true that you don't have to load the debugger as often to trace evil segfaults, because segfaults don't occur.
The GPL is similar to proprietary software licensing except that it demands a different future payoff. This and other systems in which the future payoff is rigid and fixed, IMHO, will have a disadvantage to PBL schemes that allow the customer to dynamically determine the payoff based on use. I wouldn't expect any of these systems to die off, but I would expect PBL systems to gain much more market share in the coming years.
Welcome to the 80s!
Academic software often used to have this sort of licensing scheme: free for non-commercial use. One problem is that it's much harder for software to get widely used with such a scheme, so you won't often make money anyway.
And if tomorrow a new CPU is released that doesn't have a von Neumann architecture? How does the person whose fundamental thinking processes w.r.t. application developement were structured by assembly adapt to that?
Personally, I would go a step farther. One of the reasons that ordinary human beings have so much trouble using software is that the programmers are far too close to the details of the machine architecture.
I definitely agree. And even on modern architectures: are you really going to teach your 1st year students about out-of-order execution and pipelining and all the other good things the CPU does to make your code go faster? This makes a big difference in the execution time, of course.
Then you've got your x86 architectures where the assembly code is this CISC instruction set, but it converts it internally to a RISC-like core set. Are first-year students supposed to learn about that, too?
Teaching assembly to 1st year students because 'they need to know what's going on under the hood' is, I think, a poor reason to do that these days. There are other reasons assembly should be taught, but not because it resembles what happens on their desktop PCs.
Actually, it's a disrequirement for writing good C code. When you have optimizing compilers, trying to write for the hardware model you have in your head can make you write code that doesn't translate well to the hardware model of the chip that will run the code. This means that your code will actually run more slowly, because it's not being pipelined properly, etc.
For instance, iterating through an array with a pointer (char * p = foo; for (; !p; p++) do_stuff()) can be slower than iterating with a counter (char * p = foo; for (int i = 0; p[i]; i++) do_stuff()), because the second construct is far easier to optimize.
If Mathematica is that good and popular but Wolfram manages to go out of business, then someone would buy the rights to it and likely continue supporting it, including providing key management.
Yes. Possibly at much more evil terms than are currently offered by Wolfram. Can you say extortion?
My understanding of those laws is that email is treated as a public document because of it's inherintly insecure nature, while snail-mail isn't.
I'd expect that encrypted email would be protected under those laws...
Even things which are classified eventually fall under freedom-of-information laws. So it's not because email is insecure that anything changes. Bush's email would be a public document because he's an Important Person, and even if he encrypts it, it's still part of the record and he can be compelled to release it under freedom-of-information.
While he could use encryption, it seems to me that he would be forced to reveal the encryption key used if someone makes a Freedom of Information Act request for the information. You're allowed to ask for certain public documents under that law, and lawyers claim that his emails fall into that category, so he is required by FOIA to reveal this information to you. In order to avoid that, he has to not send email.
Encryption is a technical solution, the problem here is social/legal.
As a graduate student in Computer Science, I find that Internet access is quite highly useful. Researchers tend to put links to their research papers online and this is far more convenient
than going to the library to look for paper
you need and finding that the only copy was
stolen last week.
In general you don't look on the journals' and
conferences' pages, you look at researchers'
pages to track down those references. The
ACM Digital
Library has a number of useful papers,
but a lot of the papers were scanned in as
bitmaps and so they look terrible.
Gamma is a function which satisfies Gamma(n) = (n-1)!; it is defined as
Gamma(s) = int_0^infty e^{-t} t^{s-1} dt
as least for positive real x, and analytically continued over the whole complex plane.
Finally, omega is defined by
omega(x) = sum_{n=0..infty} e^{-n^2 pi x}
So what you do is that you prove that for real s in (1, infty), equation (1) gives zeta agreeing with the sum_{n=1..infty} n^{-s} definition; and you prove that equation (1) is an analytic function, well-defined for the whole complex plane.
Now, the so-called trivial zeros of the zeta function occur where s is of the form -2k, and k is a natural number. There are no other zeros of the zeta function anywhere but in the "critical strip", which is the area where 0 < Re s < 1. There are infinitely many zeros in the critical strip, and the Riemann hypothesis says that they all occur with Re s = 1/2.
AbiWord has a Bugzilla. If you create a bug on this bugzilla and attach the offending documents, someone will look at the bug; there's a good chance that the bugs will be fixed in short order.
If you don't, well, it's awfully difficult to fix an unreproducible bug.
No equations in the forseeable future. But, we're accepting patches. If you just send a patch to abiword-dev[AT]abisource.com, it will most likely be committed that day.
Tables and footnotes/endnotes will be in 1.2. We are overhauling the layout engine to support them.
Tables are nontrivial to implement correctly. Currently, if you really want tables, you can simulate them using tabs and over/underlining.
I started implementing endnotes[1] a while ago, but I got distracted by real life. They're not that hard, though, and once we have a new and more powerful layout engine, footnotes and endnotes should be fairly easy to implement.
[1] Footnotes go at the bottom of each page; endnotes go at the end of each section.
Abi is an ant. She's blue.
As for spreadsheets, in the near future we release code which is able to embed Abiword files in Gnumeric and allows Evolution to use AbiWord to read emails.
[plam@delta plam]$ finger s-madnick@mit.edu
[mit.edu]
name: Madnick, Stuart E
...
department: School Of Mgmt
title: J N Maguire Prof Of Info Tech
url: http://mit.edu/smadnick/www/home.html
If he was really a CS prof, it would say instead:
department: Elec Eng & Comp Sci
title: Professor
If you have a real Windows install, then WINE will run Kazaa (more or less) properly; the display is somewhat incorrect and it crashes from time to time (but, hey, that's Windows, eh?). I guess that WINE without Windows won't run KaZaA.
That's not the way patents work. A patent grants you the exclusive right to use your invention for 17 years. You may or may not choose to enforce your patent, but unlike a trademark, this does not affect your rights to enforce the patent in the future. Also, you can enforce patents on whoever you want and offer whatever terms you want to people who license the patent; you needn't be fair about it at all.
In fact there's a business model which involves buying older patents which have not been enforced, and extorting money from people who have (usually unintentionally) implementing the invention in the patent.
No, this is incorrect. OTP is secure in the following fashion:
Consider aaaaa as an OTP encryption of something. Then, hello and quack are equally good decryptions, and there's nothing that tells you what the original message was.
Opportunities Program appointment at MIT. It's always seemed
rather low to me. If you have a professor paying for your UROP appointment,
then he can give you more money, and I think a lot of profs will do that.
Keep in mind that this is undergrad student pay, and can be done during
the term. Plus you get to work with researchers, etc etc.
Actually there's a whole bunch of reasons which make it hard to deal with a large system in an academic environment. Publish or perish is certainly a major contributor. But large systems just have so much icky overhead to make them work that, in terms of work-to-reward ratio, it's almost never worth it to do a complete system. Or feasible; we don't have enough people to write large quantities of production code. Successful systems projects (wrt an academic metric for 'successful'), for instance, the self-certifying file system use parts of other systems that people have built. It's a lot easier that way, and it's really useful when those other systems are free software.
Of course, there are major minuses to not having a system you can actually use day-to-day. A lot of the microkernel research, I'm told, was done by people who didn't 'eat their own dogfood'. They would boot up the system, run their benchmarks, then shut it off. This didn't capture problems which occur only after a few days of uptime.
By the way, you can check out what the operating systems dudes are actually doing at their website: Parallel and Distributed Operating Systems Group.
... which is fishy, because I'm sitting here in my office on the sixth floor of the Laboratory for Computer Science, and the operating systems dudes are on the fifth floor. There is also no mention of Cesium on the projects page.
I couldn't actually read the original page, slant-six being slashdotted and all, but it sure doesn't sound like an LCS initiative. In fact I don't see any mention of any such operating system on the web.
The lowsrc tag is not in HTML4 and was just recently removed from mozilla.
The <OBJECT> tag seems like a much better deal.
Actually, zmodem is great when I just have a quick file I want to move from a Windows machine and all I have is TTSSH. I'm sure there's got to be a better way, but I haven't thought of it yet. As it is, I use rz on the Linux machine and send the file off.
I noticed your alum.mit.edu address. MIT still teaches 6.001 (the introductory CS course) in Scheme, but now 6.170 (software engnieering) is done in Java, not in CLU; Liskov has correspondingly updated her textbook to use Java instead.
I don't actually know much about other MIT classes in Course VI (Electrical Engineering and Computer Science), since I don't have to take classes. But it's impossible to be at MIT, in course VI, and not e.g. see some 6.001 course materials on the desk of some guy in your research group who happens to be a TA.
You mean, like UCITA?
While Java does not dump core, it can throw a NullPointerException and print a stack trace out. It's true that you don't have to load the debugger as often to trace evil segfaults, because segfaults don't occur.
Who would want to use an unsafe language anyway?
Academic software often used to have this sort of licensing scheme: free for non-commercial use. One problem is that it's much harder for software to get widely used with such a scheme, so you won't often make money anyway.
Of course, such licenses are definitely non-free.
Then you've got your x86 architectures where the assembly code is this CISC instruction set, but it converts it internally to a RISC-like core set. Are first-year students supposed to learn about that, too? Teaching assembly to 1st year students because 'they need to know what's going on under the hood' is, I think, a poor reason to do that these days. There are other reasons assembly should be taught, but not because it resembles what happens on their desktop PCs.
Actually, it's a disrequirement for writing good C code. When you have optimizing compilers, trying to write for the hardware model you have in your head can make you write code that doesn't translate well to the hardware model of the chip that will run the code. This means that your code will actually run more slowly, because it's not being pipelined properly, etc. For instance, iterating through an array with a pointer (char * p = foo; for (; !p; p++) do_stuff()) can be slower than iterating with a counter (char * p = foo; for (int i = 0; p[i]; i++) do_stuff()), because the second construct is far easier to optimize.
Encryption is a technical solution, the problem here is social/legal.
In general you don't look on the journals' and conferences' pages, you look at researchers' pages to track down those references. The ACM Digital Library has a number of useful papers, but a lot of the papers were scanned in as bitmaps and so they look terrible.
However, the zeta function can be analytically continued to the entire complex plane as follows:
Gamma is a function which satisfies Gamma(n) = (n-1)!; it is defined as as least for positive real x, and analytically continued over the whole complex plane.Finally, omega is defined by
So what you do is that you prove that for real s in (1, infty), equation (1) gives zeta agreeing with the sum_{n=1..infty} n^{-s} definition; and you prove that equation (1) is an analytic function, well-defined for the whole complex plane.Now, the so-called trivial zeros of the zeta function occur where s is of the form -2k, and k is a natural number. There are no other zeros of the zeta function anywhere but in the "critical strip", which is the area where 0 < Re s < 1. There are infinitely many zeros in the critical strip, and the Riemann hypothesis says that they all occur with Re s = 1/2.