Domain: rice.edu
Stories and comments across the archive that link to rice.edu.
Comments · 754
-
give it a try!The reasons why functional languages are not more widely used are the same reasons why other "minority" languages aren't more widely used: lack of training and lack of vendor adoption. Also, the creators of functional programming languages make adoption hard by picking somewhat unusual syntactic features.
It's hard to explain in a paragraph or two why functional programming is so great. Suffice it to say that it allows for much more reuse than object-oriented programming, opens up whole new ways of abstracting out functionality, and prevents one of the most common sources of bugs--aliasing.
Not all functional programming languages are purely functional. In fact, many programmers program in such functional programming languages like they do in Perl or Python. That can be both bad and good. On the one hand, because functional programming languages are powerful even for procedural programming, they may never be encouraged to learn how to take advantage of functional features. On the other hand, it may be a good way of getting work done.
My recommendation for people wanting to use a statically typed, efficient functional programming language would be OCAML. It has a full object system, yet also offers a full set of functional programming primitives. SML/NJ is another excellent implementation supporting both procedural and functional programming, and very lightweight threads (as an alternative to objects; cf. the GUI system).
Scheme and CommonLisp are also great languages. As a procedural or OO programmer, you can think of them as Python with a different syntax and a much better compiler. MzScheme is an excellent Scheme system for learning, and Bigloo is a powerful Scheme compiler. You can find more information at schemers.org.
For heavy-duty programming, CommonLisp is still better than Scheme, IMO, but it's significantly more complex. You can find a bunch of implementations at cons.org. I recommend CMU CommonLisp highly. For experimentation, CLISP by Haible is a good small interpreter. There are also a few "scripting" implementations of CommonLisp around.
Haskell is absolutely amazing for distilling programs down to 1/10 or 1/100 their size. However, it really requires a very different way of approaching programming. I'm not sure whether to recommend starting programming with it or not, in particular if you come from other languages.
There are also some special-purpose functional programming languages for high-performance computing. Those languages give performance similar to Fortran or C on numerical problems and can actually be parallelized more easily.
Of course, whether any of these links help you depends on whether you can get started using a new language with a reference manual, user manual, short tutorial, and implementation. If not, there are lots of textbooks around. The Haskell site in particular also has lost of link for FP-related resources. Also search Fatbrain.
So, in summary: functional programming languages are definitely ready for many applications. If you want to get started, there are lots of resources available. Try to find a book that you like and experiment. MzScheme or OCAML are fairly traditional ways of getting started (you still get a lot of the features you are used to from procedural languages). I suspect that functional programming is going to be the "next big thing" in programming after OOP, and I also think it's a lot more useful than OOP and a lot more well-founded.
-
Re:Anonymousness ?
There's a good summary of the procedure here: Secret Ballot Election on Computer Network.
-- -
For the complete novice
I agree with many other posters who've suggested that perhaps C++ is not the optimal language for teaching complete novices. And apparently so do quite a few smart people at Rice. That's why they wrote How To Design Programs. It's a rather good beginner text, IMO.
-
Das BlinkenlightsI like a little bit of noise from my computer, just enough so that I know it's on and working. Especially the hard drive.
That's what Das Blinkenlights (BeOs) are for!
---
icq:2057699
seumas.com -
Um. This web page says it only happens in 2020...There's a few problems: a) where are they supposed to be getting 30 megawatts from exactly?? Gee couldn't be nuclear could it? Whose gonna let you launch that? If you can launch nuclear reactors you can get anywhere in 9 months anyway...
b) they're gonna demo a 10 kilowatt version and expect it to scale by 3 orders of magnitude?
c) What's the point in doing this when all the really good stuff is on the asteroids anyway- and asteroids are stuffed full of this neat fuel called, wait for it, WATER (which incidentally makes a really great radiation shield...) and they have loads of rare metals, like URANIUM. Hey that's handy
;-)d) this system pisses away power like crazy- throwing exhaust away at 30km/s is actually too fast... very little of the energy ends up in the spacecraft almost all of it goes into the exhaust. Unless you have energy to burn you probably don't need the speed.
e) check out the link above- the timetable to get the nuclear reactor that big in space doesn't happen till 2020... with conventional technology we could be there in 5 years- 10 if we stop off at the asteroids- and asteroids can actually generate revenue.
-
HTMLized
I'd submitted this story a while back, and HTMLized it for easy viewing. HTH.
-
Try SchemeIt's easy if you want to teach them the fundamentals of programming but Python syntax is too difficult.
-
Try SchemeIt's easy if you want to teach them the fundamentals of programming but Python syntax is too difficult.
-
Diversify.
I know others have said it, but here it is again: diversify. By that, I don't just mean you should go and learn a bunch of similar languages (*cough*C++*cough*Java*cough*Eiffel*cough*). I mean broaden your horizons. Take some time to study things - languages, paradigms, ideas, fields - completely unrelated to your current field.
As for languages - well, ESR says in his page that every good programmer should at least get acquainted with Lisp, Perl, Python and C. I don't disagree (except perhaps WRT C). (If you've been taught Lisp/Scheme improperly and, as a result, now hate it, give it another try, using a more free-form approach, and in a good environment - DrScheme is good, and, besides the regular Windoze, MacOS and Unix releases, there's even a distribution uses OSKit to make it an actual FreeBSD-compatible stand-alone OS!)
Other languages I suggest: Haskell and ML (both functional languages with more "traditional" syntaxes than Lisp; Haskell is a pure functional language), Prolog (another excellent idea with a terrible reputation due to being mis-taught), Smalltalk and Self (both pure object languages; Smalltalk is pretty much the father of modern OO, and Self is its prototype-based - i.e., classless - descendant), APL (yes, APL... it's very remarkable!), and various assembly languages, most notably for the PowerPC and the Alpha.
As for paradigms... well, don't get too attached to them. As you get some experience with various languages, you'll find that paradigms are only "right" as long as they're useful. More specifically, you'll have developed your own sense of the Right Thing in programming, your own view of what programming should be like, and you'll see how the good ideas in each paradigm fit into that. (For example, Brian "water" Rice is doing some very fine work on Slate, a language which, somewhat like BETA, integrates objects, components and functions on a fundamental level.)
Also, never neglect the fundamentals. I'm talking about the theoretical foundations of computational mathematics (*): partial recursive functions, Turing Machines, etc. (Remember - don't be afraid of the math... the math is your friend.)
Finally (and in relation to the former paragraph), sit down at whatever library you find which has a copy of it, and study Knuth's Art of Computer Programming. Despite some pitfalls, it remains one of the fundamental texts in the field.
One last thing: go look at the long-standing Tunes project (here's an explanation for the less enlightened, given that the project's leader has a tendency to verbosity and obscurity when writing). Also interesting is its Languages Review page.
(*) I refuse to use the term "computer science". But that's the subject of another rant entirely... -
Spoiler
I provide you with a clue Clue
-
Hyperbolic geometry Java applet
Others have already pointed out the error in the earlier post - the surface of a sphere is an example of a surface with positive curvature, not negative curvature. For discussion (and a Java applet - yay) of a surface with negative curvature (in this case, hyperbolic geometry), try http://math.rice.edu/~joel/NonEuclid/.
-
Re:The definition of "AI" is fluid...I think this heuristic is rather well put:
The essence of intelligence is performing actions appropriate to one's objectives given limited computational resources and uncertain, incomplete information.
-Devika Subramanian, AI researcher -
why not locally
I would assume that every machine on their network requires SecureID to log-in. (On the local Ethernet/LAN/WAN, not dial-up) Then the original author is right it does require a PAM module.
A quick search on google showed: Mention of some guy writting one. But no download? -
Re:The Irony of itExcept that this rule wasn't adopted in 1700.
Depends which country you're talking about. The calendar was the creation of Pope Gregory XIII in 1582, dropping ten days in October. Catholic countries followed immediately, and Protestant countries by 1700. In Europe, it was only England who had a leap year in 1700. Use of the Gregorian calendar in England (and the colonies) was finally specified by an Act of Parliament in 1751. By then, because of the extra leap year, the correction required 11 days. I believe Russia may not have changed until this century.
-
Re:Garbage Collection is for Incompetent Programme
Guilty as charged- I am "in academic circles," and I haven't ever had to work in an industry setting on really big projects where speed was very important. But I maintain that what I said was still accurate, while conceding your point: it may be true that with current tools, programmers do sometimes need to think about machine-level details (like whether their code is likely to cause page faults) in their high level designs, but it's also still true that they shouldn't have to. I have mentioned elsewhere in this thread the idea (popular among the faculty here at Rice) that you ought to first write your program in a very high-level language (at Rice, it's MzScheme), figure out where it's important for your code to go fast, and then rewrite those pieces in a low-level language where you can control machine-level details. The claim is that you get a speedy enough program, because you've optimized the hell out of the critical sections, and the stuff that it doesn't matter whether you optimize or not, which is most of your code, was written much more rapidly than would be possible with a lower-level language.
-
Re:Question about Garbage Collection
I'm sending a response to this post to emin in private mail, as it's fairly lengthy. If others are interested, drop me a line and I'll send you a copy as well.
-
This takes more than chemists
From the ACS page:
- carbon nanoscience, including fullerenes and carbon nanotubes
- molecular-scale electronic devices, including wires and components
- molecular self-assembly, with particular emphasis on organized structures and machines,
- quantum size effects, including electronic and photonic phenomena
- nanotechnologies, including lithographies, microscopies and manipulators
- crystal engineering, including detailed architectures for electronic and photonic applications
- engineering of nanoscale dots, films, and 3-dimensional structures
- molecular-scale biomedical engineering
Quite a breadth of fields represented here, and a list that illustrates an important point about nanotechnology -- by its very nature, you're combining a lot of areas of expertise. Right now, most of the work is arguably in the area of chemistry, but in the next few years you're going to have chemists, physicsts, mechanical/electrical/some new field? engineers, and even computer scientists working in the area. In the end, we're going to need to combine more people than just the physicsts.
Along these lines, I like what some universities are doing: check out Rice's Center for Nanoscale Science and Technology and Cornell's National Nanofabrication Facility for examples of institutes that have been set up specifically to bring together the various disciplines needed to tackle this problem.
Oh, and a note to Technos -- as much money as even the military black budget has to throw around, we're nowhere near developing weapons-grade nanotech. If you want self-replicating weaponry, biological warfare remains your only "good" option.
-
Linux support at RiceIt seems like a lot of universities are now starting to support Linux. Rice University has just adopted support for Red Hat 6.1 on university owned PCs, also offering to help students with installation, troubleshooting, and applications. There's a page announcing their support at http://www.rice.edu/Computer/News/linux.shtml.
This is all very exciting-- I'm sure a University distro would appeal to a lot of schools...
Charlie Reis
-
Not that great.I did some research on holograohic data storage as an undergraduate at Rice University. First of all, Lithium Niobate is not a viable system for large scale data storage because of cost. Efforts are underway to develop hydrocarbon-based photopolymer systems, since they would be much cheaper. What you end up with is a platter coated with the medium (much like a CD) instead of a "crystal" like you see in science fiction.
A major factor in the efficency of a hologaphic system is the difference in refractive index between the composing materials. (That's what allows you to make the grating that causes the hologram, the larger the difference in refractive index, the better it is.) Photopolymers have a very narrow range of diffractive index, depending on substituents. (Phenyl groups are 2.4, Florine 2.1, I think. I might have them backwards.) To make photopolymers more viable, one approach is to optically "dope" the photopolymer substrate with small inorganic nanocrystals like titanium dioxide that have a much higher refractive index.
The paper is very interesting, but it addresses a technical problem instead of the fundamental economic problem with litium niobate systems. The bottom line is
..., er, the bottom line. -
Re:What university
I could be wrong, but I think he's talking about Rice University. Find it at http://www.rice.edu.
Bobbie doesn't approve their page. -
Re:What am I missing?If you actually go out and look around, or (gasp!) try to code it, you may find that the TSP is a well known problem for which many optimal and approximate algorithms have been devised. Problem set sizes much greater than 5 or 7 can be feasibly solved. Here is an article from 1993 mentioning a solution to a TSP of record 3038 cities
;)http://nhse.cs.rice.ed u/CRPC/newsletters/jan93/news.tsp.html
--ac
-
Why I want free css-auth code
Here's a hint for Mr. Valenti - it's not to pirate DVDs.
1. I want to play DVDs on Linux. I know that's semi-possible now with the css-auth code, but not on a K6II with no hardware decoding. I'm hoping that once the CSS cat is legally out of the bag we'll start to see the software that's already there blossom much faster than if further development is legally shackled.
2. I don't want to play DVDs on Windows or with a hardware DVD player. I don't like Windows, I don't use Windows, and I'm not about to change that. I don't have a standalone CD player, and never bought CDs until I had a CD-ROM. If I have to get a separate DVD player to hook straight to a TV, I'll just stick with VHS, thanks.
Oh, and I'm not too interested in closed source Linux players either. I buy closed source games for Linux, but something as basic as a video
decoder should be open source, for a number of reasons.
3. I want to archive movies someday. Analogy: I went through grades K-12 without buying a single audio CD (and just a couple tapes). After MP3s became popular, I started buying audio CDs, simply because it's infinitely more convenient to have my entire music collection ultra-accessible. I have an internet accessible (passworded) infinite
CD changer (of my own purchased music), in essence, and that's a very good thing. When hard drives get into the hundreds of GB, I want to
do the same thing with video.
4. I want to be able to play DVDs without a DVD player. Sounds oxymoronic, no? But in the not-too-distant future when Crusoe webpads are all the rage, I want to be able to upload a movie or two to my light notebook and watch them on the road. I shouldn't need more than an ethernet connection on said notebook to do this; I definitely shouldn't need an additional (and more expensive portable) DVD-ROM drive.
5. I don't think all software should be open source, but I do think all software should be possible to reimplement from scratch as open source, whenever people with the necessary skills gets up sufficient motivation. Microsoft gets enough flak for making obfuscated, poorly documented Office formats; what do you think the DoJ would do if all their file formats were *impossible* to read/write with other software because of some technically weak but legally bulwarked encryption scheme?
6. I want to be able to conveniently downsample, take still shots of, and edit DVD video. Yeah, yeah, you can do this pretty well with a Windows crack or piping the analog video to a capture card, but I want to do it on *my* system. Did nobody else get a kick out of the recent Matrix parody? Imagine more things like that, but add short dubbed clips, Gimpish effects, etc. Imagine taking a set of TV episode collections (I'm waiting for the Simpsons) on DVD and chopping out credits, bad episodes, etc. and putting just your favorites on a disk to lend to friends.
7. I want to be able to preserve my DVDs. The movie industry seems to be pining for the day when consumer video just wore out after a while, when technology made sure that people who paid for a piece of video didn't get that video forever. How many millions of dollars did media studios get from people who left a tape in the sun, who watched or listened to an analog tape too many times, etc. and wore down the quality but enjoyed the entertainment *they purchased* enough that
they bought a replacement? Even DVDs get scratched - and the horrid skips in a copy of Saving Private Ryan my friend rented demonstrated what happens then. I want to be able to make perfect copies of movies I buy, stick the originals in a closet, and just make a new perfect copy to watch if something happens to the first one.
8. I want to be able to move my DVDs to The Next Big Format. Sure, it's a nice coincidence that we're at just that moment in technological history when 1 movie of data == 1 disc of data, but does anyone really think we won't be able to fit a dozen movies on removable media in 10 years, or a hundred movies on a disc within our lifetime? If you can't make fair use copies of the movies you
purchased, and you want a library disc of your whole video collection, you're out of luck.
9. IT IS MY RIGHT. It was the DeCSS author's right to reverse-engineer software to make a compatible alternative. It is my right to make perfect copies of media I own a license for, for personal use. I made up this list because Mr. Valenti (and the judge in the court transcript I read) can't seem to understand that there might be normal reasons for normal people to want unfettered access to the media they purchased, but in reality I shouldn't need any excuse to legally exercise the rights that copyright law gives me.
I don't own a DVD player, and I don't plan on ever getting one if distributing this software is incomprehensibly ruled illegal. I would want to move this mirror offshore to somewhere it is legal, however.
I'd boycott them because I'll be sick of the DVD industry, not because I won't be able to use the software, mind you. I downloaded CSS source code from public court records, so I've got it legally; they can't retract that after the fact. I wouldn't be copying DVDs illegally, so they can't pick on me for that. Even if they rule that reverse engineering pitiful "encryption" is illegal, using a legally obtained product to exercise your license rights still won't be. -
Actually took the class...
Here at Rice University they actually had an intro to science fiction course. Some of the books definitely were way out there and probably not appropriate for small children, but a lot of the scifi scene has graphic parts, so a proper introduction might include them. Anyway, some of the notable books in the class included: Neil Stephenson's Snow Crash Octavia Butler's Dawn Douglas Coupland's Microserfs (slighly eclectic but good) I'd personally recommend "A mote in God's Eye", "Stranger in a Strange Land", "Cryptonomicon", and "The Rowan". BTW, if anyone's horribly interested, I've got a small short-story of my own up under "Persephone's Song", check my main page for a link to a friend's response.
-
Actually took the class...
Here at Rice University they actually had an intro to science fiction course. Some of the books definitely were way out there and probably not appropriate for small children, but a lot of the scifi scene has graphic parts, so a proper introduction might include them. Anyway, some of the notable books in the class included: Neil Stephenson's Snow Crash Octavia Butler's Dawn Douglas Coupland's Microserfs (slighly eclectic but good) I'd personally recommend "A mote in God's Eye", "Stranger in a Strange Land", "Cryptonomicon", and "The Rowan". BTW, if anyone's horribly interested, I've got a small short-story of my own up under "Persephone's Song", check my main page for a link to a friend's response.
-
Re:He dissed Lisp!
The TUNES review basically says "the standard sucks because it doesn't standardize half the things that are really necessary." Yep. However, that doesn't mean that there aren't Scheme implementations that do a good job of filling in the gaps. In particular, Rice University's PLT group puts out a Scheme environment, DrScheme, that has everything that TUNES complains about and more (including a good object system). DrScheme is on the short list of Scheme environments to be using. True, it's not standard, and that's a problem. However, it's fairly well-documented (with a graphical help browser, no less, that doubles as a minimal HTML renderer), and it's supported by some of the most prominent Schemers around (in fact, members of the PLT run schemers.org, what TUNES calls the "number one page about Scheme"). They're accessable, too- if you think it can't do something you want to do, post to comp.lang.scheme and one of the maintainers will tell you that you're wrong with a degree of politeness proportional that in your original message =).
Of course, I go to Rice, and I know the people who maintain DrScheme, so I'm biased. However, having programmed in it for two years, I can tell you that if you can't do something in DrScheme, that's because you shouldn't be allowed to do it at all. -
Do Your Part!
Another great article on womengamers.com entitled "Searching for the Techie Woman" has a list of resources for getting women interested in Computer Gaming, and Computer Science as a whole. Here are some of the better ones:
http://math.rice.edu/~lanius/club/girls. html (has a whole lot more links, too)
www.girlgeeks.com
http://www.mystery.com/WAM/index.html -
Re:Slackware Versions
Dr.Scheme, Rice University's implementation of MzScheme (also known as Rice Scheme) is now up to version 101. Back when I took COMP 212 there (the class that uses Dr.Scheme exclusively), the software was at version 53. That was only Fall 1998, so perhaps they've confused "build number" with "version number".
:) -
Re:Slackware Versions
Dr.Scheme, Rice University's implementation of MzScheme (also known as Rice Scheme) is now up to version 101. Back when I took COMP 212 there (the class that uses Dr.Scheme exclusively), the software was at version 53. That was only Fall 1998, so perhaps they've confused "build number" with "version number".
:) -
Re:Slackware Versions
Dr.Scheme, Rice University's implementation of MzScheme (also known as Rice Scheme) is now up to version 101. Back when I took COMP 212 there (the class that uses Dr.Scheme exclusively), the software was at version 53. That was only Fall 1998, so perhaps they've confused "build number" with "version number".
:) -
Re:Why is LISP superior?
I would suggest actuallty trying to write some code in raw Scheme, not emacs LISP, that does some sort of interesting data structure manipulation, preferably recursively. Maybe pick up a copy of SICP, The Little Schemer or The Seasoned Schemer.
Alternatively, read Revised(5) Report on the Algorithmic Language Scheme and download a copy of DrScheme (versions for Win32, MacOS, and X) so you can play with the language. -
Re:Beowulfs?Beowulf was definately not the first clustering project, and also not the first clustering project on Linux. But they are currently the most popular. Some other clustering projects that preceeded Beowulf include:
- TreadMarks
- The Quarks DSM System (ports to other platforms are here and my port to Linux is here.)
- DIPC (or try here)
- SHRIMP, a high performance parallel system for Linux.
- PVM -- a message passing approach to parallel programming.
-
Quotes are Quotes, Whether Claims are True or Not
Those who do not understand Unix are condemned to reinvent it, poorly.
It's what Henry Spencer said.
It's widely known.
There may be merit to your contention that not understanding Lisp results in reinventing it badly; Erik Naggum commonly makes that contention about Scheme, and I have no problem with the assertion that anyone building new systems that ignores the Common Lisp HyperSpec is likely doomed to reinvent parts of it less well than CLTL2.
That may mean that a more valid claim would be more like
Those who do not understand both Lisp and UNIX are doomed to reinvent parts of both, badly.
That still does not deny the historical fact that what is in my
.signature is what Henry Spencer said.I've got a "cookie file" that populates email and news
.signatures with random quotes; not all of them are true, at all. Some represent downright falsehoods; the Spencer quote isn't one of those.If you are feeling so much feeling towards Lisp, then I'm wondering why you're not running Ocelot or SilkOS or NASOS or the rendition of DrScheme atop FluxOS, or, if you're a Common Lisp partisan, perhaps Genera.
-
Quotes are Quotes, Whether Claims are True or Not
Those who do not understand Unix are condemned to reinvent it, poorly.
It's what Henry Spencer said.
It's widely known.
There may be merit to your contention that not understanding Lisp results in reinventing it badly; Erik Naggum commonly makes that contention about Scheme, and I have no problem with the assertion that anyone building new systems that ignores the Common Lisp HyperSpec is likely doomed to reinvent parts of it less well than CLTL2.
That may mean that a more valid claim would be more like
Those who do not understand both Lisp and UNIX are doomed to reinvent parts of both, badly.
That still does not deny that what is in my
.signature is what Henry Spencer said.I've got a "cookie file" that populates email and news
.signatures with random quotes; not all of them are true, at all. Some represent downright falsehoods; the Spencer quote isn't one of those.If you are feeling so much feeling towards Lisp, then I'm wondering why you're not running Ocelot or SilkOS or NASOS or the rendition of DrScheme atop FluxOS, or, if you're a Common Lisp partisan, perhaps Genera.
-
Rotation of Willy's Statue
This is definitely an "MIT-style" hack- it does not involve computers, but is firmly embedded in the folklore of Rice University.
The Rice Campus is built around a large, open "quad" surrounded by six of the major buildings on campus. In the center of the quad is a statue of William Marsh Rice, who provided the money for the school to get started. The statue is a slightly life-sized bronze of "Willy" sitting in a very large chair. I'm sure it weighs several tons, and is on top of a square stone bier over six feet tall which allegedly contains WMR's remains. (See here for a picture).
One morning in the late 80's, the students awoke to discover that Willy's statue had been perfectly rotated 180 degrees, with no trace of the equipment used to do it.
It turns out that a group of engineering and architecture students had built some sort of inexpensive tripod-like "crane" that was lightweight, portable, and could be assembled *very* quickly. There were some nice subtlelties to the hack:
1. The entire rig could be carried in the back of a pickup
2. Willy is illuminated by a bright mercury vapor light at night. The students started turning the light off at 2:00am for a week prior to the planned rotation to reduce suspicion.
3. Before the actual rotation, the students did a practice run on a previous night, where the statue was simply lifted a couple of inches off the pedestal and set back down again. Which means they effectively got away with it twice.
One of the more humorous parts of the story was about what happened afterwards. The administration was *not amused*, and hired a professional contractor to turn the statue back around. The contractor damaged the statue in the process, and the university billed the students for the whole thing.
Of course, they didn't have any money, so they created a tee-shirt about the rotation. They sold so many that they not only paid the bill, but netted an additional $7,000.
Today, the statue is firmly anchored to it's base.
Can any other Rice alums fill in the details I missed? -
Diversity of code
The problem with creating a single monolothic open source repository stuffed with functions and class libraries for everything under the sun is that people's needs are far too diverse. The current model, where tidbits of functionality for specific topics are maintained by various organizations considered "authoritative" in that field, has proved fairly effective. Some notable examples include netlib, libwww, ARPACK and of course CPAN.
I'm not sure what purpose would be served by bringing all of these various efforts under a single roof. They all have differing philosophies, goals, and styles. Some, such as ARPACK, are highly domain specific, and its maintainers are unlikely to care about "generic code repositories." The STL filled a very important niche, but having gotten the basic algorithms and data structures out of the way, creating a massive interdisciplinary code repository is an unachievable and perhaps undesirable feat.
-
James Tour
You can see what the Tour research group is up to at Rice by going to his homepage at http://www.jmtour.com/. There is information about this project at http://www.jmtour.com/info.htm. Scroll down the page a bit.
Finally, don't forget that you can see more about the Rice nanotechnology program at The Rice Quantum Institute and The Center for Nanoscale Science and Technology. Don't forget that Rice is where the Buckyball craze started, with Smalley and Curl winning the Nobel for the discovery of its shape. -
James Tour
You can see what the Tour research group is up to at Rice by going to his homepage at http://www.jmtour.com/. There is information about this project at http://www.jmtour.com/info.htm. Scroll down the page a bit.
Finally, don't forget that you can see more about the Rice nanotechnology program at The Rice Quantum Institute and The Center for Nanoscale Science and Technology. Don't forget that Rice is where the Buckyball craze started, with Smalley and Curl winning the Nobel for the discovery of its shape. -
Re:Chemistry points valid but incompleteJust to correct a somewhat misleading impression there - Prof. Smalley is actually a strong nanotech advocate. (Or, perhaps we are thinking of different people?) E.g. see his 1996 talk on the social and environmental necessity of nanotechnology:
-
Ant colony heuristics
Actually, the algorithm that ants use to explore their surroundings and find the shortest paths to food is based on reinforcement learning, not fuzzy logic. There's a good paper by Subramanian, Druschel and Chen on how this relates to dynamic network routing. Here's a link. And here's the follow up.
-
Ant colony heuristics
Actually, the algorithm that ants use to explore their surroundings and find the shortest paths to food is based on reinforcement learning, not fuzzy logic. There's a good paper by Subramanian, Druschel and Chen on how this relates to dynamic network routing. Here's a link. And here's the follow up.
-
My experience with LASIKI had LASIK surgery done on both eyes this past July, and I am very pleased with the results. It ended up costing an arm and a leg to fix my eyes ($2000 per eye), but I consider it money well spent. Also, unless you are very creative and can really justify the surgery, your insurance company will probably not cover it.
The whole surgery took less than an hour. They use anesthetic eyedrops, so you are awake the entire time. The only part of the surgery that I wasn't ecstatic about was when they put the suction cups on my eye to keep it still. It didn't hurt, rather it was unpleasant in the same way that the blood pressure cuff is unpleasant at the hospital: it doesn't hurt, but you'd rather not have it on all day! Anyway, when they apply the suction, your vision blacks our momentarily. This freaked me out the first time and I tried to fight it. While your vision is blacked out, you hear a tiny buzzing noise as they use a tiny saw to cut the necessary flap in your eye. I guess it's a good thing that you can't see because I know I'd be freaking out if I saw this tiny blade sweeping across my eye! Upon cutting the flap, your vision is restored in that eye, and you can see them lift the flap up. Things get really fuzzy at that point. You are instructed to look at a blinking light, and you hear the beeping as the laser is activated. Your vision becomes increasingly clear as the seconds go by. Also, you can smell the tissue burning if the laser is applied long enough. The real shocker is when they put the flap back down over your eye...perfect vision!
After the surgery you will have a tiny red dot on each eye where they made the incision to cut the flap, and these take about 3 weeks to completely go away. Be prepared for the "What happened to your eye" questions.
Anyway, I was able to see immediately after the surgery, and walked out of there unassisted. The next day I was seeing 20/25, and was driving within three days (could've been sooner but I opted to play it safe). By the time August rolled around, I was seeing 20/20 in both eyes.
The only bad thing about LASIK is night vision. You'll see halos around lights for a good couple of months. My doctor said the reason I still see them is because I have larger pupils than most people, and he could prescribe eye drops if it bothered me that much, but it doesn't.
I would definitely recommend the surgery. I was near-sighted with a lot of astigmatism and used to wear some pretty thick bottlecaps, but now I'm free of contacts and glasses. Of course, at the rate I'm playing Quake3, I'll be back to four-eyes in no time!
I scanned the before/after topo maps of my eyes. They can be viewed by clicking here. The two circles at the top represent the before images. You'll notice the hour-glass shaped region of astigmatism. The bottom two circles show the results of the surgery. As you can see, they went in and reshaped my cornea, lowering it by about 10%, causing my "football-shaped" eye to flatten out some.
Another option you might consider is corneal rings. These are implanted in the eye and work for near-sightedness because they flatten the cornea. The good thing about this surgery is it's reversible. If you change your mind and want to go back to glasses/contacts, you can just have them removed, unlike the LASIK approach. Plus I think it's cheaper.
-
Re:Clarke is the manWhy can't nanotubes be produced in bulk? What kind of contrants are involved in it's production process?
The current production technique is a bit awkward and labor intensive. But samples can be purchased here.
-
Re:Clarke is the manWhy can't nanotubes be produced in bulk? What kind of contrants are involved in it's production process?
The current production technique is a bit awkward and labor intensive. But samples can be purchased here.
-
Re:"Hackers" ruled!
I agree with your principle that people who are making movies should pay more attention to what's effective in the medium than to the boring truth, but I really feel like Sneakers was much more successful as a movie than Hackers. Hackers put too much of its thrill in culture shock, and left the characters flat and the plot a mere formality. Not that I'm deaf to culture shock sci-fi -- it was an okay action thriller, a hell of a lot better than The Net, but didn't really stick with me.
Sneakers, OTOH, gave the characters a little bit of depth (if only a little bit), toyed with an interesting idea or two on the way to the Hollywood Climactic Ending, and left us with a quotable bit of humor here and there on the way.
Hackers vs. Sneakers isn't quite as pronounced as The Matrix vs. Bladerunner, but I'd say it's a comparison along the same lines.
Just don't talk to me about that "you could have anything you want and you're asking for my phone number?" drivel.
-
Galileo was a showman.
Humble is an inappropriate description. Galileo was a courtier and a favorite of the Medici family. He named the moons of Jupiter that he found for them.
Check out a good website on Galileo.
-
Re:Laptop mfgs.Neomagic chipsets are fully, free-software supported, by either an XF_Com (using RH/Precision Insight's terms, this means an X server whose license meets the requirements for inclusion into XFree86 proper, but has not yet been included by the XFree developers) or XFree86 >=3.3.3.
The only problem is the audio (the Neomagic 256AV is a combined video/audio chipset); at least on my Dell Inspiron 3500, the software mixer isn't fully lined up with the features of the hardware, so I can't, for instance, turn up the volume on my microphone, leaving that particular piece of hardware basically useless on my laptop.
But graphics work just fine.
-
No need to reinvent the wheel
There is already a very good programming language which is very well suited for learning computer science, much more so than Python.
There are excellent books for learning this language. E.g. "Structure and Interpretation of Computer Programs"
Yes I mean Scheme.
See:
http://www.schemers.org
The TeachScheme! Project
comp.lang.scheme FAQ -
Re:Justifications?
Though in all honesty, GUIs are much more easily programmed when you have languages with real first-class functions (eg Python, Scheme).
Of course GUIs can be done other ways, but why would you want to? Speed? Bah. Scheme and Python both run plenty fast enough to handle waiting for you to click on things. Just take the parts that really NEED optimization (which will not be the GUI) and write them in C or assembly. So you get ease of programming with a nice high-level language, and speed where you need it from a low-level language. Don't try to find one language that will do both for you, because you'll probably end up with the worst parts of each rather than the best.
With that said, I should admit that I usually program in C++. What can I say? I don't often program GUIs, and I like to overload operators. "You have no power! I will TELL you what addition is! Hahahahaha!" =)
-jacob
Hmm. I imagine I should air out the asbestos suit right about now...
-
Holographic Data StorageLitium Niobate is one cystalline candidate for holographic data storage. However, it is too expensive to compete with more conventional types of data storage.
There's ongoing research ( http://nanonet.rice.edu/research/boy d_res.html) to use photopolymers as a cheaper holographic medium. If such research comes to fruition, you're more likely to see CD like disks coated w/ a holographic layer than the typical science fiction "data crystal."
Other problems w/ holograms:
- materials are not totally transparent, so "cubes" might be out of the question-materials must be chemically resistant to the atmosphere (e.g. oxidation, humidity), which might necessitate that they are coated. Such a coating might have deleterious effects on the substrates optical properties.
- storing a hologram changes the structure of the crystal, which can cause limits of data density and beam penetration.
- multiple holograms can be stored at the same location by rotating the crystal, but each hologram attenuates the possible intensity of subsequent holograms in that location.
- holographic "efficency" is a funciton of the difference between the refractive indices of the substrate components. photopolymers have a very small range of refractive indices as oppossed to inorganic crystals.
Overall the medium might not be rewritable, but a high density, long lasting storage medium would be ideal for back-ups.
Anyway, it's been awhile since I "got out of the business" of chemistry, but this is what I remember.
-
Hubble image URL