Domain: unm.edu
Stories and comments across the archive that link to unm.edu.
Stories · 15
-
Doom Is Twenty Years Old
alancronin writes with a quick bite from the Dallas News about everyone's favorite FPS: "Few video games have had the impact that Doom has on the medium as a whole. While it wasn't the first first-person shooter out there, it was certainly one of the earliest hits of the genre, due in no small part to its revolutionary multiplayer. Today, that game is 20 years old. Made in Mesquite by a bunch of young developers including legends John Carmack and John Romero, Doom went on to 'transform pop culture,' as noted by the sub-title of the book Masters of Doom." Yesterday, but who's counting. Fire up your favorite source port and slay some hellspawn to celebrate (or processes). I'm partial to Doomsday (helps that it's in Debian). -
Beer Drinking Networks In Amazon Tribe Help Explain Altruism
KentuckyFC writes "The Tsimane tribe are hunter-gatherers living in the forested region between the foothills of the Andes and the wetland-savannas of the Llanos de Moxos in Bolivia. They drink beer made from boiled manioc (a type of sweet potato) which they chew and spit into the mix to trigger fermentation. After a week or so, the resultant brew is about 4 per cent alcohol. Now anthropologists studying this tribe say the way they host beer drinking events for each other offers important clues into their culture. At issue is the question of altruism: why people spend considerable time and effort doing favors for others that don't directly benefit them. The answer from studying these beer drinking events is that the favor is quickly returned by the guests in the form of another beer drinking event. This helps to build good relations with neighbors and family. And when the beer drinking invite is not returned, the researchers speculate that this is probably because there is some other favor involved, such as helping to gather or prepare food, suggesting mates or political co-operation." -
Playing With Friends Makes You a Better Gamer
An anonymous reader writes "Computer scientists at the University of Colorado and the Stevens Institute of Technology have shown that gamers that play with friends play better. The study used the blockbuster FPS Halo: Reach as a testbed, and combined ground truth data on friendships from an anonymous survey with data about the multiplayer competitions extracted using the Reach Stats API. They found that the more friends you have on your team, the more assists, the fewer betrayals, the more you score, and the greater the probability your team wins, and that this 'friends for the win' effect goes above and beyond the benefits of playing with skilled strangers. (They also show that older gamers are statistically better than younger players, contrary to popular opinion.) Study lead Prof. Aaron Clauset, writing on his blog, says that friends 'may be able to effectively anticipate or adapt to each others' actions or strategies without an explicit need for verbal (and thus time consuming) communication or coordination,' and 'these effects may be fairly universal, and not merely limited to the traditional domains like sports and war, where practicing together has a long tradition.'" -
Virtualizing a Supercomputer
bridges writes "The V3VEE project has announced the release of version 1.2 of the Palacios virtual machine monitor following the successful testing of Palacios on 4096 nodes of the Sandia Red Storm supercomputer, the 17th-fastest in the world. The added overhead of virtualization is often a show-stopper, but the researchers observed less than 5% overhead for two real, communication-intensive applications running in a virtual machine on Red Storm. Palacios 1.2 supports virtualization of both desktop x86 hardware and Cray XT supercomputers using either AMD SVM or Intel VT hardware virtualization extensions, and is an active open source OS research platform supporting projects at multiple institutions. Palacios is being jointly developed by researchers at Northwestern University, the University of New Mexico, and Sandia National Labs." The ACM's writeup has more details of the work at Sandia. -
Google Forays into Print Advertising
dotpavan writes "It's not that if Google farts, it makes headlines, but this move is a smart one, at least for a tech company which was primarily thought of a search-engine company. Yahoo News reports that Google has ventured into print ads (or offline ads as they are called there) by buying pages at PCMagazine and Maximum PC. More interesting is the website adsbygoogle.com which has these images, but the main page is not functional. " -
Developing Applications With Objective Caml
Fahrenheit 450 (William D. Neumann) writes "Developing Applications With Objective Caml was originally published in French by O'Reilly, and later translated into English by a group of volunteers (note that the reviewer was a volunteer proofreader during the translation effort), and graciously made available online as HTML or PDF at the Caml website. For those not familiar with Objective Caml (or OCaml, as it is commonly called), it is a strongly, statically typed (but don't be thinking about Pascal-style typing), eagerly evaluated language with a functional core that also offers many imperative programming features. OCaml also has full support for object-oriented programming that fits in completely with OCaml's strong type system. On top of that, OCaml code can be interpreted for simple scripting, compiled to bytecode for portability, or compiled to native code for speed and resource utilization that rival even that of Intel's C++ compiler. Intrigued?" If so, read on for the rest of Neumann's review. Developing Applications With Objective Caml author Emmanuel Challoux, Pascal Manoury, and Bruno Pagano pages 742 publisher O'Reilly France rating 8/10 reviewer William D. Neumann ISBN 2841771210 summary A comprehensive book on Objective Caml, covering not only the core language, but also modules, objects and classes, threads and systems programming, and interoperability with C.
The Book The book itself is quite comprehensive, clocking in at over 700 pages and covering material ranging from an introduction to the language to concurrent and distributed programming. To organize all of this material, the book is broken into four main sections that build upon each other. Each section has a set of chapters that present some related concepts, followed by an "Applications" chapter that uses those concepts to create a few small applications such as a minesweeper game, a graphical interface library, a couple of different two-player games, a distributed robot simulation, and a basic HTTP servlet. These four sections are as follows:I. Language Core
This section serves primarily as an introduction to the OCaml language, with chapters on the functional core and imperative aspects of the language, a chapter on the differences between the two styles that shows how the two can be melded, and a chapter on the OCaml Graphics module. The introduction to OCaml is complete enough that anyone with a background in programming should be able to achieve a good understanding of the basics of the language. Especially when combined with other freely available resources, like Jason Hickey's Introduction to Objective Caml , and Richard Jones' Learning OCaml for C, C++, Perl and Java programmers, one should be able to obtain a strong OCaml foundation to use while reading the rest of this book.II. Development Tools
The second section covers, as the title states, the OCaml development tools. The chapters in this section provide information on the OCaml compilers, interpreter, and interactive toplevel environment; some of the libraries included with the standard distribution; OCaml's garbage collection mechanism; Ocaml's debugging and profiling tools; OCaml's versions of lex and yacc; and interfacing OCaml with C. This is perhaps the most valuable section of the book, as it provides good coverage of some important topics that are covered a bit too briefly in the OCaml manual.III. Application Structure
This section covers the OCaml Module system, and its interface and functor (parameterized module) facilities. Also included in this section is a well written chapter on object oriented programming in OCaml, and a chapter comparing the two models of program organization, offering a brief look at how the two systems can be combined to reap the benefits of both.IV. Concurrency and Distribution
The final section covers the topics that many folks might consider to be the "real world" programming topics: File I/O, process management and communication, concurrent programming using threads, and distributed programming. The coverage in this section is, again, well done, but perhaps a bit light, and it would have been nice to see more time spent on this subject matter. However, the book is already quite hefty, and the services provided by OCaml's Unix module should look familiar enough to most programmers that the material that is presented should be sufficient to get a competent programmer up and running.
The Upshot For the most part, Developing Applications With Objective Caml does a very good job at presenting the OCaml language in more of a "practical" light than other books on languages in the ML family (and functional languages in general). And while the applications that are constructed throughout this book aren't anything particularly great or interesting in and of themselves (a simple BASIC interpreter, a rudimentary database, a client-server toolbox, etc.), they aren't the primary purpose of the book. What the applications are used for is to illustrate how the concepts presented earlier in the book are used in within the framework of an application, and not just as isolated examples. This is especially important, as most people who might read the book will be unfamiliar not just with Objective Caml, but with the entire functional programming paradigm. Repeated exposure to working OCaml code helps to familiarize the reader with functional programming and OCaml idioms while reinforcing the book's material.There are, of course, some problems with the book. For one thing, Developing Applications is nearly five years old, half a lifetime when dealing with most computer related topics. This issue is first brought to light in the introduction where it's mentioned that chapter one tells how to install version 2.04 (OCaml is currently at version 3.08), and then in chapter one, when the reader is warned that, "Objective Caml only works under recent versions of Windows : Windows 95, 98 and NT." Fortunately, the information presented about the language remains valid (and Appendix B presents some of the features added to the language by version 3.04, the release that was current at the time of the translation). There are also a few spots where the code in the book contains minor errors, but both of these issues can easily be overcome with the help of the resources listed earlier in this review, or with the help of the OCaml community. Other minor issues crop up as a result of the translation, with the occasional odd sounding phrase popping up in the text and examples. These problems are, however, few and far between and do little to detract from the material or the presentation. And so this book still remains one of the best resources for learning Objective Caml. I used it when I was learning the language, and I still turn to it from time to time as a useful resource.
Will the book turn you into an OCaml guru, or teach you all sorts of advanced type system trickery? No, of course not. But it can teach you enough about the language to start you writing real apps in it. And it will allow you to add a fast, flexible, and powerful language to your toolbox.
Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page. -
Sign Language Out Loud
hcetSJ writes "CNN.com has an article about a glove that reads sign language and can translate to spoken English. Although it's only one-handed now, and can only handle about 200 words, the inventor has further plans for a second hand and wider vocabulary. I wonder if this could be linked with the Rosetta Stone idea, to quickly expand the vocabulary. Also mentioned in the article is the possibility of military use...gaming control can't be far off." grvsmth points to a more detailed article on GWU's website. -
Old MIPS/ARM PDAs for Teaching?
Barak Pearlmutter asks: "I'm teaching computer architecture this spring. The course involved a lot of assembly programming, and in the past has used a SPARC simulator. I'd like to get a bunch of PDAs with RISC processors (ARM or MIPS) instead. This requires a development environment that runs under Linux and supports assembler...and some PDAs. The less memory and the slower the CPU the better! Also no virtual memory or real OS to get in the way - best to have direct access to the display and buttons.""It seems like companies must be sending 128k MIPS handhelds to the landfill at this point, so giving them to us to use in teaching would be a win/win, since they'd get a tax writeoff and some good will instead. But even if they cost $20/ea, that would be fine. Any suggestions on what hardware to use, or what companies to contact? Remember, there must be a convenient way to download executable code into them, using a cable rather than a flash ROM. And we're pretty much a Debian GNU/Linux shop, so a working cross-compiler based on the GNU toolset would be best. An emulator would be even peachier, so students could debug without downloading the code after each little change, although that's not strictly necessary."
-
GTK-- vs. QT
spirality asks: "The company I work for is getting ready to decide on a GUI Toolkit for our Computational Modeling Toolkit (CoMeT, www.cometsolutions.com). We would like C++ compatibility and ports to various Unices and Win32 platforms. Not supprisingly we've come up with two choices, GTK-- and QT. I've attempted to compare the two by doing alot of web surfing and searching, but I've come up with things that are consistently one or more years old. So, the question I pose is what are the (dis)advatages of GTK-- and QT, and why would I choose one of these toolkits over the other? Overall functionality, momentum for future growth, ease of use, licensing, and pretty much anything else is relevant to our decision." With QT now at version 3.0 and GTK now in the 1.2.x revisions, maybe it's time to give the two libraries some fair comparison and discuss the new features, advantages, and disadvantages of each? -
Computer Immune Systems
LL writes "We might soon be seeing commercial delivery of autoimmune security systems. Rather than the surface bit pattern detections of antivirus checkers, these system attempt to provoke virii in a secure area (IBM) or match network packets against signature tags (Forrest). The interesting plug is that the author suggests that large programs such as operating systems should be made in such a way that no two copies are exactly alike. Now guess what favourite beast has this trait?" -
Dvorak on "Winners and Duds of the Millennium"
erikaaboe wrote to us with yet-another-end-of-year round-up. This time around Dvorak has taken a look at the past year. Winners include Linux, dot-com millionaires, while WinCE and DIVX are flops. Interesting commentary on the dot-com millionaries though. -
Kill -9 With a Doom Shotgun
Herschel Krustofsky writes "A researcher at the University of New Mexico has modified the Doom source to visualize processes and kill them! Finally you can really enjoy killing that Netscape process that just won't die!" Allright, I'm impressed. -
Interview with Ransome Love
Randy Scott sent us a link to an interview with Ransome Love of Caldera. Fairly standard fluff stuff. Talks about the grassroots hype about industry "Poisoning" Linux as well as small intelligent linux devices. -
UltraHLE Author Calls it Quits
Randy Scott writes "RealityMan, co-author of UltraHLE, is dropping out of the emulation scene. He states his reasons here. The rumor that UltraHLE would make a return in one form or another is confirmed by Foxy's Weekly Column, but this was before RealityMan's departure. I'm not sure what the state of UltraHLE is at this point... " -
Zip? Avatar? Syquest? Which Portable Drive is a Good Deal?
Randy Scott asks: "Since Avatar went bankrupt and liquidated their assets, the Shark drives are being dumped all over the place. Been considering getting one, tho I know I'll be hosed when it comes to media or troubleshooting. Syquest is faster than the Zip, but they also filed Chapter 11 recently and the media is expensive. The main thing Zips have going for it is that everyone seems to have one (good for file sharing). My question is should I get an Avatar drive, Syquest drive, or play it safe and go with a Zip?" Hmm...decent choices...but what about Jaz, too?