Domain: acm.org
Stories and comments across the archive that link to acm.org.
Comments · 1,502
-
Several ideas
Given the level of your school, I think you should introduce the students to some (semi-) formal methods of designing web sites beside introducing the technologies (DB, CSS,
...).
My suggestions are:
WebML and WebRatio
Additionally (shameless plug), you could introduce some special cases of web design such as the one described here and implemented here. -
A similiar project that I worked on at school
Check out QuASM (Question Answering using Semi-Stuctured Meta-data)...we used similiar processes and approaches to getting "answers" out of a large (40 TB) collection of
.gov, .edu, .org web pages. The demo page is no longer available (we completed work on this in 2002) but you can checkout the paper at ACM:
http://portal.acm.org/citation.cfm?id=544220.54422 8
It was a really interesting project to be a part of!
Go UMass! -
Even earlier...
I recall seeing still shots of a speed-of-light visualization in a brochure from Carnegie-Mellon's supercomputing center, back in the early '90s.
I can't find the brochure online (this was pre-WWW), but I think the stills came from this paper, from 1990.
Not that I think that this sort of thing is redundant. As technology advances, this is the type of visualization that's worth repeating on new hardware and new software.
k. -
Re:Tübingen project got the colors wrong
I doubt it was a matter of forgetting; it's much more likely that they decided including the frequency shift would detract from the simulation. Visible light covers a comparatively narrow spectrum, from 700 to 400nm, and at the velocities they're covering any visible-light emissions would have shifted completely out of that band; at a fairly modest velocity like v=.8c, the doppler effect already produces a frequency shift of 3x, carrying a 400nm wavelength all the way up to 1200nm. I put together a good chunk of the doppler-shift portion of Dr. Ping-Kang Hsiung's simulation of these visual effects back in the early 90s (though I'm not among that paper's authors), and getting it to look interesting was far and away the most difficult part of the simulation.
-
Re:In a way I agree
-
Re:journal price resistanceThis model is doing well in several disciplines that I am familiar with, notably computer science and mathematics. Here are some good online journals:
- The Electronic Journal of Combinatorics with a very prestigious editorial board (including Knuth and Wilf), since 1994 and going strong
- Geometry and Toplogy, very impressive editorial board, since 1997
- The New York Journal of Mathematics and the The Pacific Journal of Mathematics, both general-purpose mathematics journals
- ACM Transactions on Algorithms, impressive editorial board, formed from Journal of Algorithms by resignation and reconstitution
I know that other scientific disciplines have stronger histories of expensive journals and that their typesetting needs (color photos, etc.) may be greater than that of math and CS, so perhaps it is not so surprising to see math and CS being more of the pioneers here.
There are plenty of good expensive journals now but the point is- why not have good inexpensive or free journals instead? - The Electronic Journal of Combinatorics with a very prestigious editorial board (including Knuth and Wilf), since 1994 and going strong
-
Re:55 CPU years
Another victory for the General Number Field Sieve (I think). The article was a little light on the details, but it mentioned they used a "general algorithm", which I'm assuming is the GNFS. The original paper may shed some light on the algorithm, for the algebraically inclined Slashdotter. (Link courtesty of Google Scholar)
-
Re:Love of the Mouse
The mouse and the dumbarse point and click interface have to die.
-
And yet even this is simplified a good bit
They go directly from Smalltalk/PARC to Apple/LISA as if nothing happened in between. There actually were a decent number of GUI/windowing systems in the late 70s / early 80s, and a number of pre-X attempts at making a UNIX GUI, that time has totally forgotten. PERQ is the only one I can seem to find evidence of the existence of on Google offhand. If you can somehow find a copy of the book containing this history of GUIs written in 1986, it's rather fascinating...
-
Re:Can I TM "the"?
-
Re:Wha?Oops... my bad.
Anyway, these are the papers I mentioned:- J.A. Pouwelse, P. Garbacki, D.H.J. Epema, and H.J. Sips. The bittorrent P2P file-sharing system: Measurements and analysis. In 4th International Workshop on Peer-to-Peer Systems (IPTPS). LNCS (to appear), feb 2005.
- M. Izal, Guillaume Urvoy-Keller, Ernst W. Biersack, Pascal Felber, Anwar Al Hamra, and L. Garcés-Erice. Dissecting bittorrent: Five months in a torrent's lifetime. In PAM, pages 1-11, 2004.
- Dongyu Qiu and R. Srikant. Modeling and performance analysis of bittorrent-like peer-to-peer networks, 2004.
-
Re:No, the third run is for finding bugs
you mean http://www.acm.org/classics/sep95/ ?
-
Re:I'll tell you what the problem is...
No, it isn't.
-
Re:An ideal world would run on LISP...Two years ago, I saw a practical demonstration of a Symbolics LISP Machine from 1987
The frightening thing is, lispms from the 80's enjoy quite some popularity among certain people where I work. They really are amazing machines, and those who use them regularly feel strongly that there hasn't been a more usable environment in all the time since they were created.
Let me tell you, though, as a sysadmin, these things can be a royal PITA. Not because there's anything wrong with them (well, except maybe for their complete lack of security) but they're just so different.
There are still many copies of The Lisp Machine Manual lying around, including an early rant by RMS against the recent trend of software hoarding. It makes for an interesting read...
noah
-
The best thing of OS/2: TD-GammonTD-Gammon was the best thing in OS/2. It was a neural network backed engine to play backgammon that disputes with the best players in the world. A research project at IBM that became a killer application (at least a killer time killer application). Read an article about TD-Gammon. Here is the paper of the theory behind it.
I didn't used OS/2 anymore, but dual booted it for years just to play this great game. It changed the way I play backgammon.
Slowness and lack of applications were OS/2 weakness, but this is surely something I really miss. Open source it, IBM!!!
-
AI Has Been Solved
The Mentifex AI solution bypasses the famous Turing Test in favor of primitive AI Minds that must speciate and evolve.
The Association for Computing Machinery has reported twice (in 1998 and in 2004) on the Mentifex progress towards True AI.
AI has been solved but the claim of an AI solution *in* *theory* *only* arouses intense hostility on the 'Net.
Amazon Book Reviews are an example of vicious Mentifex-bashing where Slashdotters are invited to intervene with the well-known and widely admired Slashdot traditions of open-mindedness, fair play, and gentlemanly respect for the opinions of others.
Your name may shine forever in AI history if you read AI4U on line for free and write the definitive review of the solution to AI on Amazon.
-
But, why not just Citeseer??
Ok, now besides "brand Recognition" why would I want to pay someone $1500 to upload my work to a web page in the Internet?, why not only upload it to my home in the Uni and then publish it in places like Citeseer or even something like ACM's DL.
I think (like some others in this thread) its only a matter of brand recognition and commerce, but if you have a good paper about any subject AND it is on the Internet, it will surely be published. -
Re:Isn't that what research is for?The medical research community seems to be behind the curve on this stuff, but ACM http://portal.acm.org/ and IEEE http://ieee.org/ have been fairly progressive. Individual subscriptions to the ACM portal are reasonable, and the site-wide subscription for universities isn't that bad either. I'm involved with ACM SIGDA http://www.sigda.org/, and if you join (free), you get on-line access to all the SIGDA sponsored conference and journal articles. SIGDA will in fact mail you a DVD every year with the past 10 years worth of conference and journal publications -- something for nothing!
While I can't speak for ACM, the policy seems to be "you're smart enough to figure out a way to get it free, so we might as well make it cheap." For SIGDA, the board position is that if you're interested in the material, you should be able to get it with minimum hassle. The ACM portal is in fact working for ACM; they're getting lots of subscriptions, and have cut down on the admistrative grief.
Now if only the entertainment industry would get it....
ACM and IEEE journals can have page charges, but they're usually optional. If you've got a million bucks of government funding to do some research, it doesn't seem out of line for you to help subsidize the publication of research results. For conferences, much of the registration fee goes for rental of the meeting space, food, and so on; more than most people would expect. Conferences require authors to register so that the other attendees don't show up to an empty room. Conferences usually do a little better than break even, which helps cover the freebie DVD, and things like that.
-
AI Has Been Solved
The news has recently been announced -- just in time for the emergence of AI-ready robots -- that the sideways integration of sensory input with a conceptual mindgrid is the solution to artificial intelligence.
The solution to AI qua problem -- qua grand challenge to humanity -- exists at first in theory only.
The Association for Computing Machinery has reported in ACM Sigplan Notices 33(12):25-31 (1998) and in ACM Sigplan Notices 39(12):11-16 (2004) on progress in implementing the AI solution as open-source AI software evolving into Mind.Forth for robots. There is an implicit contest involved here of who can keep the date-stamped robot AI Mind running the longest, as if for the Guiness Book of World Records. Since Mentifex AI is in the public domain, programmers are free to customize special AI Minds in any programming language and to offer their artificial intelligence for sale on eBay in the Computers and Networking software marketplace.
Please do not point to the primitive Mentifex software as proof that the claim of an AI solution is false. The only claim made here is that AI has been solved in theory, not yet (please stand by) successfully implemented in software or hardware. The Artificial General Intelligence Research Institute (AGIRI) is creating powerful Novamente software but is handicapped for lack of funding and for disregard of the Mentifex AI theory. Mentifex has a secret plan to locate funding for AGIRI if the AGI team either hires Mentifex or agrees to implement the Theory of Cognitivity.
-
AI Has Been Solved
The news has recently been announced -- just in time for the emergence of AI-ready robots -- that the sideways integration of sensory input with a conceptual mindgrid is the solution to artificial intelligence.
The solution to AI qua problem -- qua grand challenge to humanity -- exists at first in theory only.
The Association for Computing Machinery has reported in ACM Sigplan Notices 33(12):25-31 (1998) and in ACM Sigplan Notices 39(12):11-16 (2004) on progress in implementing the AI solution as open-source AI software evolving into Mind.Forth for robots. There is an implicit contest involved here of who can keep the date-stamped robot AI Mind running the longest, as if for the Guiness Book of World Records. Since Mentifex AI is in the public domain, programmers are free to customize special AI Minds in any programming language and to offer their artificial intelligence for sale on eBay in the Computers and Networking software marketplace.
Please do not point to the primitive Mentifex software as proof that the claim of an AI solution is false. The only claim made here is that AI has been solved in theory, not yet (please stand by) successfully implemented in software or hardware. The Artificial General Intelligence Research Institute (AGIRI) is creating powerful Novamente software but is handicapped for lack of funding and for disregard of the Mentifex AI theory. Mentifex has a secret plan to locate funding for AGIRI if the AGI team either hires Mentifex or agrees to implement the Theory of Cognitivity.
-
Artificial Intelligence for Robots - Source Code
Mind.Forth for Robots is free AI source code that high-schoolers may download, play around with, and possibly get a leg up on outdoing MIT and all the other minds-wide-shut adult AI enterprises. (There is an implicit contest involved here of who can keep the date-stamped robot AI Mind running the longest, as if for the Guiness Book of World Records.)
The Theory of Cognitivity is the basis of the free source code for artificial intelligence. Any high-schooler interested in an AI or robotics career may start working on AI theory immediately.
Dr. Ben Goertzel of the Novamente AI project has evaluated the AI theory offered here.
ACM Sigplan Notices 33(12):25-31 "Mind.Forth: Thoughts on AI and Forth" was a 1998 evaluation by the Association for Computing Machinery (ACM).
ACM Sigplan Notices 39(12):11-16 "Forth and AI Revisited: BRAIN.FORTH" is a more recent (December 2004) follow-up by the ACM on the robot AI project.
-
Artificial Intelligence for Robots - Source Code
Mind.Forth for Robots is free AI source code that high-schoolers may download, play around with, and possibly get a leg up on outdoing MIT and all the other minds-wide-shut adult AI enterprises. (There is an implicit contest involved here of who can keep the date-stamped robot AI Mind running the longest, as if for the Guiness Book of World Records.)
The Theory of Cognitivity is the basis of the free source code for artificial intelligence. Any high-schooler interested in an AI or robotics career may start working on AI theory immediately.
Dr. Ben Goertzel of the Novamente AI project has evaluated the AI theory offered here.
ACM Sigplan Notices 33(12):25-31 "Mind.Forth: Thoughts on AI and Forth" was a 1998 evaluation by the Association for Computing Machinery (ACM).
ACM Sigplan Notices 39(12):11-16 "Forth and AI Revisited: BRAIN.FORTH" is a more recent (December 2004) follow-up by the ACM on the robot AI project.
-
Re:Internet too?
Can you really trust the compiler? What about the microcode in the processor? What about your Ethernet card? Who can you trust, really?
http://www.acm.org/classics/sep95/ -
Welcome to last summer
This was in SIGGRAPH 2004, as were plenty of other great papers. Are we waiting another 6 months to see those on Slashdot?
-
Show them Squeak!
Squeak is an environment that is meant, among other things, to be used to teach children about programming and computers.
It's difficult to explain what it does. If I understand correctly, it is at the same time a "personal 3D environment" which can be shared, a customizable programming environment, a kind of window manager, and a teaching tool.
The special thing about it is that any part of the environment can be edited on the fly, and reprogrammed/modified. This was demonstrated by Alan Kay at his Turing Award Lecture last year. There is a stream of the lecture, although it doesn't work for me right now. The most impressive parts of the demo were near the end, so you might want to watch the parts in reverse order (or watch all of it, it was really good).
There are some examples of simple apps that can be created in the Squeak environment on the website, these should be just the right thing to impress the kids. -
Old idea, but it's about timeGlad to see it's finally moving forward, though it's not exactly a new idea. Actually goes back much farther than in the following link (so I don't feel like it's really tooting my own horn), but just rehashing from a slightly different (more ideological?) perspective: We, the Internet. They should have a date somewhere on there, but it was probably 2000 or 2001 (but based on ideas that go back at least to the late '80s).
Capsule summary--the privately-owned WLAN infrastructure should bypass and where possible replace the wired corporate-owned network infrastructure. There are three main facilitating aspects:
- Certain content is very popular, and can therefore greatly benefit from distributed caching.
- Much content is intrinsically local (such as local business specials and ads).
- The system can scale very well. Actually, by using variable power transmitters, as density increased the individual power requirements would actually decrease while the local bandwidth would remain constant, and without requiring any additional frequency spectrum.
-
Re:Constant Change
You mean like this from 1985 which had (they claim) a working User Interface Management System? Yes, I agree, it is hard, and is an active field of academic research. There is a lot of research though, that we really ought to be looking at instead of just letting it remain research. I think this starts to fall into that category.
I don't see why you need XUL or XAML either - it would seem to me that, for instance, libglade is something you could build such a system on top of as well. This is something GNOME and KDE could be working toward right now as yet another way to help unify the desktop. Applications could still be GNOME or KDE specific (if they chose to use particular features of the DE) but it would then also be possible to write applications that were desktop agnostic and slotted into either.
Jedidiah. -
Shared source worthless for security
Because you can't compile the code, you have no way to verify that it is even the right source code.
Initiatives such as Microsoft's Shared Source program are worthless PR exercises. That has been proven almost a decade before the initiative by Ken Thompson.If MS-Shared Source is anything other than a PR move, then perhaps it is to taint developers to prevent them from contributing to free or open source projects in the future.
-
Re:That sucks
... without the man who actually had a good grasp on UI technology and THE behind it, the development is likely to go the wrong way
...
I disagree. Who better to take over than his son? -
Re:Easy 'nuff
The paper mentioned is "Reflections on Trusting Trust" and is by Ken Thompson. http://www.acm.org/classics/sep95/ Out of curiousity, why is the above post marked "flamebait" when it's a valid point? Oh wait, this is
/., forget I asked. -
Wrong type of Psychologist
From the article:
I do not believe all online games are inherently bad or evil.
But I do know, however, that some of the game manufacturers do require their game developers to have degrees in psychology to make them even more addictive.
Um, no. No they do not. What game developers might do is hire a Psychologist who has studied Human Computer Interaction, a branch of Cognitive Psychology which is concerned with, among other things, the usability of computer software.
As games become more complex, it becomes necessary to design an interface which is easily used, but not restrictive. Anyone who's played an MMORPG knows the importance of a good HUD. That's what's at hand here; game developers are hiring more Cognitive Psychologists to aid in the design of their game's interface.
The area of Psychology she's referring to is Psychopathology (i.e., "mental illness"). Psychologists in this realm study addiction... very different from those who study HCI.
Maybe this is some FUD she picked up from her lawyer, Jack Thompson? (Refer to second article) -
Re:Nice to seeThere are some pure theory types, but look behind some of the names, even many of the theory types have had huge practical contributions:
1966 A.J. Perlis - compiler construction
1967 Maurice V. Wilkes - builder and designer of the EDSAC, the first computer with an internally stored program.
1968 Richard Hamming - error correcting codes
1969 John McCarthy - (citation missing, but how about Lisp?)
1972 E.W. Dijkstra - Algol
1977 John Backus - FORTRAN
1979 Kenneth E. Iverson - APL
1981 Edgar F. Codd - relational database
1983 Ken Thompson and Dennis M. Ritchie - Unix
1984 Niklaus Wirth - EULER, ALGOL-W, MODULA and PASCAL
1987 John Cocke - compiler optimization and RISC
1988 Ivan Sutherland - Sketchpad
1990 Fernando J. Corbato - timesharing and Multics
1992 Butler W. Lampson - personal workstations
1997 Douglas Engelbart - pretty much everything from the mouse on...
1998 James Gray - database and transaction processing
2001 Ole-Johan Dahl and Kristen Nygaard - OO programming and Simula
2002 Ronald L. Rivest, Adi Shamir, Leonard M. Adleman - public key cryptography
2003 Alan Kay - Smalltalk -
My, my, my; where do I start?
I guess I'm become an old fogie and hadn't noticed it. "...leads to varying degrees of unpredictability, which used to be a no-no word in the microprocessor world."
Sounds like they're breaking the "Principle of Least Astonishment" - the result of performing an operation should be obvious, consistant, and predicatable. (Or for GUIs, the most usable system is the one that least often leaves users astonished.) They're equivalent.
"unpredictability becomes a great asset leading to energy conservation and increased computation speeds."
Why yes, if you don't have to be right, you can greatly increase the computation speed and save power at the same time -
10 PRINT "PI=3"
20 END
Who needs sites like:
www.ualr.edu/~lasmoller/pi.html
www.cecm.sfu.ca/pi/pi.html
www.bath.ac.uk/~mfws20/having_fun_with_pi.html
with my better program above?
Want it more unpredictable? Use: 10 PRINT "PI=";RND()
Want it even faster? How about: 10 END
That program is so fast and unpredictable it didn't bother to print out the answer.
And hey, energy conservation? That's easy, just examine the power-on bit a few times until it changes state. You'll then have all of the power you want, since your server just unpredicatably powered itself off.
(I'm ignoring the obvious Pentium math coprocessor jokes, that's much too easy.)
" excessive heat is now a major obstacle for speed-demon chips.... A lot of this heat stems from today's deterministic approach to chip design, Palem notes. The chip gobbles large amounts of energy to be absolutely certain that each data bit is either a 0 or 1 at every step of a calculation."
Hey, I can't wait for my bank to get hold of one of these --
1) deposit a dollar,
2) withdraw a dollar,
3) check my account for a unpredictable event - like my account balance got stored with the leading bits flipped (NO not the sign bit!)
4) If balance is 0.00, GOTO 1 (http://www.acm.org/classics/oct95/)
5) PROFIT!!! -
Re: Now that's just plain wrong
> [...]as the memory management/system programming facilities in Ada are very different from that in C/C++. For example you don't have crazy things like function pointers and a lot of the generally unsafe features that C/C++ has to make system programming easier.
Actually it does; I wrote an application that uses an array of function pointers so that the logic calls the appropriate function based on the index. (IIRC, the index was an enumerated type.)
However, I suspect that it's still safer than in C/C++, because of the strong type checking on pointer usage.
> Is it even possible to write a device driver in Ada?
Here's the first thing Google turned up. (For those who don't have access to the ACM portal, the short answer is "yes".)
Also, as someone else has already noted, the need for embedded systems was one of the key design considerations for the competition that produced Ada. -
Re:That sounds a lot like...
Maybe it is like this 1987 system.
-
ACM SIGPLAN HOPL
ACM SIGPLAN has has held a couple of History of Programming Languages conferences, with proceedings full of interesting papers.
-
ACM SIGPLAN HOPL
ACM SIGPLAN has has held a couple of History of Programming Languages conferences, with proceedings full of interesting papers.
-
Re:Pascal
The Java/OO vs Pascal/procedural is currently raging, both at the high school and college level. To be sure, there are advantages and disadvantages to each.
For more info, you should check out this ACM listserver posting on the subject, which the beginning of a long thread on this issue.
-
Peruse the the proceedings of UIST
Much of the cutting edge research in user interfaces, both in software and hardware, has been published at the ACM Symposium on User Interface Software and Technology. Take a gander at the last five years, starting from the 2004 conference site.
-
Re:Learning It?
What about APL? If you're in for cryptic but powerful languages, of course.
-
You would have thought...
... people would have got the point. Christ even John Backus (FORTRAN's creator) said that FORTRAN and even all imperative languages were horrible ugly hack, and that we should all go away and use "[the] functional style, and it's algebra of programs".(warning: pdf link).
-
Software that works
I'd like to see software that works listed as a grand challenge (and the preeminent Sir Tony Hoare would seem to agree, promoting trusted components and verifying compilers as Grand Challenges). On the whole, we can't do that yet. The so-called "software engineering" field is truly pittiful compared with other engineering fields.
-
Software that works
I'd like to see software that works listed as a grand challenge (and the preeminent Sir Tony Hoare would seem to agree, promoting trusted components and verifying compilers as Grand Challenges). On the whole, we can't do that yet. The so-called "software engineering" field is truly pittiful compared with other engineering fields.
-
Capabilities — not POSIX “capabilities&#
a project to create an operating system whose security relied on capabilities rather than the traditional Unix model of root or non-root.
This has been possible in Linux (and some proprietary Unices) for some time now. Why the need for a separate OS?
Linux? Kids these days... Capabilities is a feature from the 1970s. If Coyotos is anything like EROS or KeyKOS, then they don't mean POSIX "capabilities" but real capabilities as described in 1975 by Jerome Saltzer and Michael Schroeder in the famous The Protection of Information in Computer Systems paper: "Capability--In a computer system, an unforgeable ticket, which when presented can be taken as incontestable proof that the presenter is authorized to have access to the object named in the ticket." For an excellent introduction to capabilities, read What is a Capability, Anyway? by Jonathan Shapiro. Then read the Capability Theory by Sound Bytes essays by Norman Hardy for more informations. Those papers are classics, just like Reflections on Trusting Trust by Ken Thompson. It's a must-read for anyone who wants to have even the slightest idea about computer security at all.
-
Working with Ted and ZigZag
Greets!
So, first things first - I met Ted at The ACM Hypertext conference in Aarhuus in 2001. He gave a keynote and a workshop on ZigZag - which at once seemed totally obvious and very powerful. I played with the ideas for a bit, showed some things to him whilst he was a visting professor at Southampton and have worked with him here at the University of Nottingham before he went off to his current job, at The Oxford Internet Institutehttp://www.oii.ox.ac.uk/. It is a priviledge and an honour to be able to call Ted my friend - he has an incredible mind, a huge vision, and yes, he can code!
I've been working on using ZigZag to represent the deep interrelationships inherent in biological information. We've also been working on ZigZag as a phone/PIM interface and analysing the underlying structures. If you're interested in finding out more, read our published work:
Moore, A.; Goulding, J.O.; Brailsford, T.J.; & Ashman, H. (2004). Practical Applitudes: case studies of applications of the ZigZag hypermedia system. Proceedings of Fifteenth ACM Conference on Hypertext and Hypermedia, August 9-13, 2004, Santa Cruz, CA, USA pp 143-152 (http://doi.acm.org/10.1145/1012807.1012851)
Moore, A.; Nelson, T.; Brailsford, T.J.; & Ashman, H. (2004). ZigZag for Bioinformatics. Poster Proceedings of ISMB/ECCB 2004, July 31-August 4, 2004, Glasgow, UK (http://www.iscb.org/ismb2004/posters/axmATcs.nott .ac.uk_923.html)
Moore, A.; & Brailsford, T.J. (2004). Unified Hyperstructures for Bioinformatics: Escaping the Application Prison. Journal of Digital Information: Special Issue on Future Visions of Common-Use Hypertext. Vol.5, Issue 1. Article No. 254, 2004-05-27 (http://jodi.ecs.soton.ac.uk/Articles/v05/i01/Moor e/)
Ted has also published a long paper on the fundamentals of ZigZag:
A Cosmology for a Different Computer Universe: Data Model, Mechanisms, Virtual Machine and Visualization Infrastructure
http://jodi.ecs.soton.ac.uk/Articles/v05/i01/Nelso n/
Finally, come visit our website (link in my profile), look around, ask questions - we're always interested in new ideas!
Adam Moore, Postdoc Researcher, ZigZag for Bioinformatics -
or maybe yes after all
Large database systems can and have been written in forth.
http://groups-beta.google.com/groups?hl=en&lr=&q =a uthor%3Aerather%40forth.com+database&qt_s=Search+G roups
Forth, being an extensible language by design is also one of the few truly verifiable languages from a point of view of trust.
Consider "Reflections on Trusting Ttust".
Because the forth core can bemade very tiney (even as little as 3 forth words - ok this makes an inefficent forth) the rest of the forth can be in ascii source form and compiled on-the-fly at bootup.
This makes it easy-ish to verify that the tiny binary core is safe and un-tampered with and the main ascii source easy to examine and diff for changes.
Try certifying that your C/C++ code based on generations of binary output from C compilers is safe.
Sam -
Re:This is cool
It is not a scanline renderer. Like Pixar's PRMan, it is a REYES renderer. For parts of an image where raytracing is the best choice of algorithm, Renderman allows you to raytrace selectively. Aqsis does not support raytracing currently (you'd be surprised how little you need it), but it does support using a rayserver (such as BMRT) for that. And as you noted, raytracing with true global illumination (you can already do Ambient Occlusion) is coming soon.
-
TFA's author doesn't know what he's talking about
Today's CPUs sport some more powerful instructions, and they perform optimizations that range from the pedestrian to the exotic, including pipelining, branch prediction, executing multiple instructions in the same clock cycle(s), and even reordering the instruction stream for out-of-order execution.
Calling any of those "optimizations" is a stretch, in my opinion, unless a V8 engine (or maybe two 4-cylinder engines with a shared gas tank and transmission) is an "optimization" of an inline 4.
Note that some of what I just called "optimizations" are actually far more than optimizations, in that they can change the meaning of programs and cause visible effects that can break reasonable programmer expectations.
Not on any "normal" CPU (see explanation below).
But in recent years they have been willing to pursue aggressive optimizations just to wring yet more speed out of each cycle, even knowing full well that these aggressive rearrangements could endanger the semantics of your code.
They won't affect the semantics of code unless the CPU has a design problem (again, see below).
Two noteworthy examples in this respect are write reordering and read reordering: Allowing a processor to reorder write operations has consequences that are so surprising, and break so many programmer expectations, that the feature generally has to be turned off because it's too difficult for programmers to reason correctly about the meaning of their programs in the presence of arbitrary write reordering. Reordering read operations can also yield surprising visible effects, but that is more commonly left enabled anyway because it isn't quite as hard on programmers, and the demands for performance cause designers of operating systems and operating environments to compromise and choose models that place a greater burden on programmers because that is viewed as a lesser evil than giving up the optimization opportunities.
Actually, you reorder them inside the processor, and then do a check to make sure your reordering did not affect the functionality before actually committing to memory (some instruction sets allow memory access reordering, and have explicit instructions to specify that certain operations must happen before others). As it is right now, your top-of-the-line x86 chip is going appear to execute a program exactly the way it would if it only did one operation at a time, and everything in order. A HUGE amount of work goes in to implementing "precise interrupts" - making sure that at any point, if you interrupt the CPU, all instructions before the current PC (program counter) have executed to completion, and no subsequent instructions have started execution).
Basically, the way instruction reordering works is that instructions are fetched from memory in order, and their dependencies are evaluated. They're given tags (unique IDs inside the CPU), and their tags are added, in order, to a queue at the end of the pipeline. Then, they flow through the actual execution units out of order. As they execute, they update a "speculative state" - results are sometimes stored in an entirely separate register file called the "future file". An instruction can only affect "architectural state" (programmer-visible state) when it is the oldest instruction in the queue at the end of the pipeline. If an instruction has an exception (divide by zero, software breakpoint, interrupt), all subsequent instructions are squashed - you can do this because the queue is added to in order, and the machine looks just like an in-order machine would.
It's worth noting that various researchers have looked into the optimal pipeline depth - basically, due to various sources of overhead (flip flops cannot store values instantaneously, there is clock skew on a chip, and other higher-level factors like data dependencies), they conclude that 6-8 gate delays -
Oh, I get it!
Jason put WHYWOULDYOUSPAM in his mailto to try to deter spammers. Here is the non-munged email: mailto:jasonab@acm.org! HERE YOU GO SPAMMERS!
-
Re:Yeah, right.
I may not trust firefox, but I trust that if anybody was putting modified firefox binaries with trojans, virus's etc on the net, it would be discovered in less than a day, and fixed within a week.
IIRC Microsoft's verisign was initially hacked. If you had selected "[x] Always trust from Microsoft" in IE, then you would not even see the exploits install themselves.
Downloading and running ANY program is a security risk. It relates to this classic paper
Can you really trust that c compiler of yours that everything else is bootstrapped from?