Skip to Main Content (access key 1)
Skip to Search (access key 2)
Skip to Search GO (access key 3)
Skip to comments (access key 4)
Skip to navigation (access key 5)
Skip to top of page (access key 6)
Sunday, July 27, 2008 | Reason : In the News | print version Print | Comments |

Document Biology Enters 'The Matrix' Through New Computer Language

by Science Daily

Thanks to SPS for the link.

http://www.sciencedaily.com/releases/2008/07/080722192341.htm

Biology Enters 'The Matrix' Through New Computer Language

ScienceDaily (July 25, 2008) — Ever since the human genome was sequenced less than 10 years ago, researchers have been able to access a dizzying plethora of genomic information with a simple click of a mouse. This digitizing of genomic data--and its public access--is something that would have been unthinkable a generation earlier.

But as molecules go, DNA is pretty straight forward. With its simple composition and linear structure, it easily lends itself to mathematical models. Not so with proteins. In fact, proteins are an order of magnitude more complex than DNA. It is proteins, not DNA, that carry out the cell's heavy lifting. However, with their intricately folded three-dimensional shapes determining a seemingly endless range of possible functions and their manifold interactions with other proteins and with DNA, the leg-work required to mathematically capture the protein universe seems absurd.

And it is.

That is why a team of Harvard Medical School researchers have decided to attack this issue from an entirely new angle. Rather than build a mountain range of proteomic data one grain of dirt at a time, they have developed a computer program that can take on the responsibility of assembling such a gargantuan model.

Enter Little b, a computational language that can penetrate the "mind" of a cell.

"Through incorporating principles of engineering, we've developed a language that can describe biology in the same way a biologist would," says Jeremy Gunawardena, director of the Virtual Cell Program in Harvard Medical School's department of systems biology. "The potential here is enormous. This opens the door to actually performing discovery science, to look at things like drug interactions, right on the computer."

Most current computational methods of modeling biological systems are not unlike writing a document with pen and paper. Each new project starts from scratch; there are no facilities for cutting and pasting, for linking to other texts, for including images, etc.--things that come so "naturally" to electronic documents.

Harvard Medical School researcher Jeremy Gunawardena, a mathematician by training, teamed up with Aneil Mallavarapu, a cell biologist and computer scientist, to lead a project that would bypass these limitations.

"We knew that the secret to doing this would be to assimilate fundamental concepts of engineering, concepts like modularity and abstraction, into the biological realm," says Mallavarapu, who was recently awarded the Merrimack prize by the Council for Systems Biology in Boston for developing this program.

Modularity involves breaking a problem down into separate modules and constructing each module so that it can interact with the others. Abstraction refers to extracting generic biological properties and incorporating them into the modules, so that they can use this abstract information in concrete contexts. Put another way, abstraction means that, unlike the old days of pen and paper, each new model does *not* need to be built from scratch. Models can be built upon each other and their individual modules refined and re-used.

To do this, Mallavarapu used the programming language LISP, a language widely used in artificial intelligence research. LISP is famous among computer scientists due to its ability to write code that, in turn, can write code, enabling a programmer to derive new mini-languages.

"LISP isn't like typical programs, it's more like a conversation," says Gunawardena. "When we input data into Little b, Little b responds to it and reasons over the data."

For example, Gunawardena's lab works on kinases, a kind of protein that transfers phosphate chemicals to other proteins in order to regulate their activity. While this property is common to all kinases, there is a great deal of variety in how particular kinases carry this out. Little b, however, understands this basic property of kinases, this abstraction.

Here, the researchers demonstrated how they were able to interact with Little b to build complex models of kinase activity, using Little b as a kind of scientific collaborator, and not simply a passive tool.

On a larger scale, the researchers also used the program to query the development of fruit fly embryos. As a result, they discovered levels of complexity in these embryonic structures that previous research had missed.

"This language is stepping into an unknown universe, when your computer starts building things for you," says Gunawardena. "Your whole relationship with the computer becomes a different one. You've ceded some control to the machine. The machine is drawing inferences on your behalf and constructing things for you."

The researchers sometimes admit, half-joking, that Little b sometimes feels a little bit like "The Matrix"--referring, of course, to the film trilogy in which human beings lived in a computer-generated virtual world.

Mallavarapu and Gunawardena have a pretty clear vision for this project: they want every biologist in the world to use it.

But in order to bring the program out from the early adopter community, where it is currently being used by colleagues in the Harvard community, it needs to be more accessible.

"The next step is to create an interface that's easy to use," says Gunarwardena. "Think of web page development. Lots of people are creating web pages with little or no knowledge of HTML. They use simple interfaces like Dreamweaver. Once we've developed the equivalent, scientists will be able to use our system without having to learn Little b."

And the more people use it, the smarter it gets. As researchers around the world input their discoveries into Little b, the program will assimilate that information into its language.

The ultimate goal is to have an in silico, virtual cell--a dynamic biological system living in software.

"Sure, it's a long way off," says Gunawardena, "but we're getting there."

This research was funded by the National Institutes of Health and Harvard Medical School. The funding and data sources for this study had no role in study design; in the collection, analysis, and interpretation of data; and in the writing of the report.

Journal reference:

1. Aneil Mallavarapu, Matthew Thomson, Benjamin Ullian, and Jeremy Gunawardena. Programming with models: modularity and abstraction provide powerful capabilities for systems biology. Journal of the Royal Society Interface, online publication, July 23, 2008

Adapted from materials provided by Harvard Medical School.

Comments 1 - 50 of 62 |

Reload Comments | Back to Top | Page Numbers

1. Comment #219755 by HourglassMemory on July 27, 2008 at 1:57 pm

The March of Science is delightful to listen to.

Other Comments by HourglassMemory

2. Comment #219770 by Barry Pearson on July 27, 2008 at 2:05 pm

 avatar
#219755 by HourglassMemory: The March of Science is delightful to listen to.
March? This is turning into a gallop!

Is it my imagination, or is this whole science of biology accelerating?

Other Comments by Barry Pearson

3. Comment #219790 by Sander on July 27, 2008 at 2:28 pm

Reading this gave me an eerie feeling of AI coming closer. The singularity is near ;)

Other Comments by Sander

4. Comment #219791 by black wolf on July 27, 2008 at 2:31 pm

 avatarI'm scared. Soon, the computer will know everything about me just by sitting in front of me. Then, it'll clone me, insert it's processor and data into my clone and replace me with an improved version. Waaaaaahhh!!!

Other Comments by black wolf

5. Comment #219804 by Faux Snail on July 27, 2008 at 2:44 pm

 avatarWoa, how do people come up with such programs? Really cleaver, mildly creepy. It'll be nice for the scientists to not have to learn all of the details, though. Just the tip of the cell iceberg nearly made me lose my will to live a couple of years ago in Bio.

Other Comments by Faux Snail

6. Comment #219822 by PristinePanda on July 27, 2008 at 3:10 pm

 avatarI agree, the singularity is near! Everyone here who hasn't read any Kurzweil I command to do so now! XD

Other Comments by PristinePanda

7. Comment #219826 by DamnDirtyApe on July 27, 2008 at 3:24 pm

 avatarGrief, people are going to start accusing US of being religious with the singularity talk.

I know its cool, and Ray's ideas are awesome, but let's keep the skeptic hats on folks...

Other Comments by DamnDirtyApe

8. Comment #219848 by Wosret on July 27, 2008 at 4:00 pm

 avatarI'll believe this singularity buisness when I see it, until then, it's merely si-fi.

This article is interesting though. Mt pc will try to replace me, but I'll replace it instead!

Other Comments by Wosret

9. Comment #219855 by Dhamma on July 27, 2008 at 4:07 pm

 avatarI'm in awe! We're in for some exciting times! This would probably have been developed fairly soon anyway, but it seems like it could speed up the tedious task of building these models quite a lot. As much as I may fear some aspects of this, scientific discoveries are inevitable, even if it may lead to our extinction.

However, I wish them the best of luck!

Other Comments by Dhamma

10. Comment #219861 by LaTomate on July 27, 2008 at 4:16 pm

 avatarI'm a software engineer, having specialized in bio-computing and artificial intelligence in uni. Ok, so now I'm in 3D graphics and video games, but hey.

I'm actually very surprised that this had not been done before. Inference engines (implemented using LISP or Prolog which are ideal for the job) have been around for decades.

Maybe it's our understanding of the cells that was behind and is now sufficient to implement this sort of thing.

My interest in the field is artificial selection to develop "intelligent" programs, extremely well adapted to their task, and better (though often less consistent) than anything an engineer would have come up with. We now metaprogram, rather than program. I love it :)

[Edit] for artificial selection, check this out. it's old, but hot.

Other Comments by LaTomate

11. Comment #219869 by Cyboman on July 27, 2008 at 4:29 pm

This strikes me as pure hype. The abstraction and modularity requirements of a problem domain (protein in this case) can be implemented in almost any modern programming language. Secondly, any programming language can "build things for you". Nothing new about that. Thirdly, the artificial intelligences implications implied in the article are not new either. We've had artificial neural networks and reasoning algorithms for decades that can get "smarter".

It may be useful or more efficient to work with a language that is specifically targeted to your problem domain (not really, but people think that anyway). However, a new language will not do much for science other than make the life of scientists a little more convenient.

Other Comments by Cyboman

12. Comment #219876 by Dhamma on July 27, 2008 at 4:39 pm

 avatar"However, a new language will not do much for science other than making the life of scientists a little more convenient."

Which in turn will allow scientists to focus on aspects of biology they didn't have time for before.

Convenience is one great reason we've developed better tools and machines to help us e.g. harvest faster and better. In my country 100 years ago ~90% were farmers, today 3% of us are, yet they produce far more than they did back then. The rest of the society has been able to focus on other aspects than pure survival.

Convenience helps us greatly, and I would think it could significantly help the biologists in this matter too.

Other Comments by Dhamma

13. Comment #219883 by kkelly on July 27, 2008 at 4:46 pm

 avatarWhen I was in school I thought that there would soon be programs that could instantly determine what 3D shape a protein would take based only on its peptide sequence, or the reverse. Just type in the shape and properties of the active site you're looking for and BLAMO: instant biopharmaceuticals.

Other Comments by kkelly

14. Comment #219892 by SomeDanGuy on July 27, 2008 at 5:05 pm

Does anyone have more knowledge about this? I read the whole article and I'm still not sure what this language does. I get the idea of recreating a cell in silico, but the limiting factor is our knowledge of how cells work, not ways to code that simulation. With so much left to understand, how can this accurately recreate biology yet?

Other Comments by SomeDanGuy

15. Comment #219904 by jonjermey on July 27, 2008 at 6:03 pm

This is the kind of doesn't-say-much-but-hey-we-want-funding article that crops up every week in New Scientist. But the project will probably fail, simply because statistically there are many more failures in the history of computing science than successes. In fact I have a sneaking suspicion that real computing breakthroughs in biology and life sciences are going to come through games like The Sims and Spore rather than one-off computer languages.

It's always interesting to go through the science journals from about ten years ago and tally up just how many of the 'major breakthroughs' turned out to be vapourware. Not as a criticism of science, just human optimism.

Other Comments by jonjermey

16. Comment #219911 by OverUsedChewToy on July 27, 2008 at 6:45 pm

 avatarLaTomate: You might be interested in this thread i began a while back: http://www.richarddawkins.net/forum/viewtopic.php?f=1&t=48226

A-Life is somewhat of a passion of mine :D

Other Comments by OverUsedChewToy

17. Comment #219918 by LaTomate on July 27, 2008 at 6:56 pm

 avatarkkelly:

When I was in school I thought that there would soon be programs that could instantly determine what 3D shape a protein would take based only on its peptide sequence, or the reverse. Just type in the shape and properties of the active site you're looking for and BLAMO: instant biopharmaceuticals.


It's been a while (I have stopped in this field for over 5 years) but determining the 3d structure of a protein based on its peptide sequence algorithmically is utter hell - it's an exponential computation and so is practically impossible.

What we can try and do is use artificial intelligence to try and guess the 3d structure based on training using the proteins we already know (and which have been determined using other chemical and physical techniques). Of course, these guesses won't be 100% correct, and so is not absolutely trustworthy. At the time I would have thought that the domain would have moved forward, but it seems we are still blocked by the complexity of the problem.

I once worked on the prediction of RNA secondary structures using dynamic programming. It was an extremely complex thing for technical reasons - recursive pseudoknots can give you quite a few sleepless nights :)

Anyways, I believed that using a multi-agent system - an agent per peptide would be a good place to start looking - attempting to minimize some sort of energy function, would perhaps be worth investigating to solve these folding problems. I have never suggested it though (this is a first for me) and have never heard of it being used.

As I said, I have left this domain of science (did not get phd funding at the time) but I'm still very interested in it, although time lacking, I am not up to par on the literature.

[Edit] thanks for the link ChewToy. I'll check it out :)

Other Comments by LaTomate

18. Comment #219934 by thewhitepearl on July 27, 2008 at 8:04 pm

 avatarMy heart beats faster and i get all flustered when I read articles like this.

Exciting times we live in, can't wait til I get out there.

Other Comments by thewhitepearl

19. Comment #219980 by louzer on July 27, 2008 at 10:38 pm

little b sounds like hype to me. Because all it does is to act as an algorithmic substitute for what is currently available as mathematical models of biochemistry.

Until we have what kkelly said and LaTomate hoped to achieve, we will never move ahead in this field.

Other Comments by louzer

20. Comment #219981 by Appleby on July 27, 2008 at 10:40 pm

Comment #219869 by Cyboman

Well put. I would have said it myself but knew that someone here (even though only after 18 posts) would have already.

I work in AI too. Mechanical automation of tasks which produces unexpected or unplanned output is not uncommon. It's still thrilling when your program "discovers" something, though. "Real" AI, unfortunately, is probably only achieved when computers act as unpredictably (even about one particular thing) as humans. And I'm not sure we want that.

Other Comments by Appleby

21. Comment #219983 by Steve Zara on July 27, 2008 at 10:50 pm

 avatarI agree with the skeptics, this is wildly hyped. There is nothing new in modular code that can reveal new features of the system being modelled. Also, the idea of yet another language for this kind of work sounds excessive.

Such "conversational" ways of working have been around for decades, with languages like Smalltalk and Prolog.

What did seem a bit worrying was that these authors seemed (at least according to the article) to think that introducing modularity and abstraction would be innovative, when such concepts have been widely used in general software development since at least the 1960s.

Of course, this could simply be poor reporting.

I recommend anyone interested in this subject to look up the work of Alan Kay, one of the pioneers of modern software development.

Other Comments by Steve Zara

22. Comment #219985 by Dr Doctor on July 27, 2008 at 11:02 pm

 avatarBefore rushing to judgement Steve, it might be an idea to get our mits on the language and review it.

This strikes me as the kind of executive overview I hate, no concrete examples and hyped promise editorialised around what facts there are. Just because the article is poor doesn't mean the language is not innovative.

Technical people tend to describe their innovations in past terminology, inevitably leading to claims of reinventing the wheel.

Other Comments by Dr Doctor

23. Comment #219994 by latsot on July 27, 2008 at 11:30 pm

However, a new language will not do much for science other than make the life of scientists a little more convenient.


I agree that this isn't quite as revolutionary as the article suggests, but I'm willing to believe that it has more to offer than slight convenience.

Often, working at an appropriate level of abstraction gives you a set of tools that help frame problems in new ways or even to discover entirely new problems. How many times have you struggled with something, only to find that everything suddenly clicks into place when you take a step back or look at it from the opposite direction?

Thinking in terms of functions or objects or whatever can be a hindrance to solving some kinds of problem, particularly if this is a slightly alien way of thinking for you.

If the new language really does "describe biology in the same way a biologist would", then it could be immensely valuable - not just slightly more convenient - even though there is no particularly innovative computer science going on. This may be what the interviewees' enthusiasm is based on: we are all used to that turning into hype in science articles.

My major concern about this is transparency. How do you debug, particularly other people's code? I think you'd need tool support that's a bit more advanced than a typical IDE.

Edit: I sound a lot more optimistic about this than I am in reality. I'm sure it's 'just' another research project rather than a major innovation that will take the world by storm. Interesting, though.

Other Comments by latsot

24. Comment #219996 by Steve Zara on July 27, 2008 at 11:51 pm

 avatarComment #219985 by Dr Doctor

I am not rushing to judgement. I have been a developer since the mid 70s, and I have found the tendency of developers to "roll their own" programming languages and systems has been something of a problem in my view, leading to dead-end and unsupported projects. It also leads to problems with the need to write tools and reliable and tested libraries for each new language.

It is telling that the Little b website only has a download for Windows - nothing obvious for Linux (which is a key system for high-performance computing, a necessity for such a project) and nothing at all for Macs. The tutorial has not been updated for more than 2 years.

The idea of there being a Windows-only installer for something written in such a portable language as LISP is pretty odd.

Other Comments by Steve Zara

25. Comment #219997 by Dr Doctor on July 27, 2008 at 11:51 pm

 avatarSteve,

I'll give you an example of a language I wrote as a project at a company I used to work for:




contents:
main program.
"handle message".
"log data"

environment:
restrict to local process
task "read webpage"
attach "c:output.dat" to environment.file
attach "http://news.bbc.co.uk" to environment.input
attach sink stdout to environment.console
define environment.storage as a list

main program.
steps.
until environment.termination
"handle message" from environment.input
"log data"

signals.
on "terminate"
environment.termination becomes true

handle message.
adopt role "handle message"
for each line
environment.console line
environment.storage append line

log data.
adopt role "log data" in "read webpage"
hold environment.storage
save environment.storage to "transaction file"
clear environment.storage
release environment.storage

transaction file.
adopt role "transaction file" in "read webpage"
write to environment.file



Looks a bit scrappy right? Looks like a few other languages yes? Completely uncommented, yes? Looks apparently not object oriented, yes?

OK but that is just an example program from memory. The real power is that it allowed people who wouldn't normally program cross-system code to do so without too much understanding.

My aim is to rewrite the compiler and runtime for free and open use. The selling point isn't what bells and whistles it has, but how it harnesses your system and the network. The selling point comes with concrete examples.

(i.e. not the one I provided above, that was just an example of a straightforward local process program, the key is "adopt role").

Other Comments by Dr Doctor

26. Comment #219998 by D'Arcy on July 27, 2008 at 11:53 pm

 avatarScepticism yes, but:

"Sure, it's a long way off," says Gunawardena, "but we're getting there."


Other Comments by D'Arcy

27. Comment #219999 by Steve Zara on July 27, 2008 at 11:56 pm

 avatarComment #219997 by Dr Doctor

It is just my view, but I think DSLs (Domain Specific Languages) can be a big problem. What happens when the writer of the DSL leaves the company, or decides not to support it any more?

I have had far too much experience of dealing with proprietary or specialised minority-use languages that have been left unsupported. (I am not implying you wouldn't support your own work)

OK but that is just an example program from memory. The real power is that it allowed people who wouldn't normally program cross-system code to do so without too much understanding.


There are plenty of existing languages that allow precisely that already, and in reasonably clear English: Ruby, Python, TCL.

Oh dear. I think this is just another one of those things we are just going to have to disagree about.

Other Comments by Steve Zara

28. Comment #220000 by Dr Doctor on July 27, 2008 at 11:57 pm

 avatarSteve,

That is exactly what I mean (your reaction to that code).

;-)

Correct me if I am wrong but Ruby, Python, TCL are not distributed two phase commit languages. The power of a language is not necessarily in the syntax and semantics but in the environment it harnesses.

(Edit) Note, also just want to point out that there is a keyword at the top that is very revealing:

environment:
restrict to local process

Without that, any computer on the network could run any part of that program.

That is what I meant by cross system.

Other Comments by Dr Doctor

29. Comment #220002 by Steve Zara on July 28, 2008 at 12:06 am

 avatarComment #220000 by Dr Doctor

Ruby and Python (and my favourite, Groovy) can easily be used in a two-phase commit environment on the JVM. Groovy integrates particularly well. The use of transactions can be made completely transparent to the coder (as in the Groovy web framework Grails)

Other Comments by Steve Zara

30. Comment #220003 by Dr Doctor on July 28, 2008 at 12:13 am

 avatarSteve,

I can't explain in depth about the language and its runtime and how it differs from traditional two phase commit models on this thread without hijacking it. But that wasn't my point, my point was to provoke your initial reaction and then demonstrate there was more to it than you initially thought just from a cursory look at the syntax and semantics.

I had a reaction similar to yours when it was introduced "Oh it is just like REXX and Object REXX" through to "what is the difference between this and COBOL". When you demonstrate how the code can be deployed around several systems, with recovery and playback of the stack and the heap and without having to think about it too hard, once people start to see what problem you are trying to solve even the poorest explainers' ideas can take off.

Except, of course, that company still owns the rights and won't market new languages so it is stuck being a useful engine in a given environment. Such is life ;-)

Other Comments by Dr Doctor

31. Comment #220008 by Steve Zara on July 28, 2008 at 12:27 am

 avatarComment #220003 by Dr Doctor

But that wasn't my point, my point was to provoke your initial reaction and then demonstrate there was more to it than you initially thought just from a cursory look at the syntax and semantics.


I haven't actually said anything at all about the syntax and semantics. It's not really my concern.

My concern is that DSLs are in general a bad thing. I am a very strong supporter of open and widely used standards. The reason is that I have spent so long in my career rescuing projects that were written in specialised and proprietary languages that seemed like a good idea at the time. Either the author decides they don't want to support it any more, or the company selling the language goes bust, or the platforms the language runs on become out-of-date.

This "I'll do my own thing" attitude used to be widespread with data formats too, but I was relieved by the introduction of XML, which allowed not just portability and the use of standards, but also meant that data formats could be extended without breaking existing applications.

If anyone who was in a project I was associated with said "I am going to write my own language" I would probably run away screaming.

You and your language may well be an exception (you certainly seem to have the experience for that to be the case), so good luck to you!

Other Comments by Steve Zara

32. Comment #220011 by Dr Doctor on July 28, 2008 at 12:37 am

 avatarSteve

You surely cannot have missed the past tense in my posts?

This is not something I am doing right now, it is something that was developed at the time to solve a specific problem in a specific place and it did so.

I am interesting in resurrecting it, but not at the cost of my livelihood.

As for you claiming you didn't comment on the syntax and semantics, oh please ;)

"There are plenty of existing languages that allow precisely that already, and in reasonably clear English: Ruby, Python, TCL."

The best computer languages are written for a purpose: to allow a target audience to operate an environment without having to think too hard about it.

As for XML, please, there is nothing *technical* in XML itself that *suddenly* allowed "portability" and "use of standards". Standards bodies can use whatever data format they like. It is a matter of what becomes popular - a de-facto standard. In this case XML was created by a standards body, and had wide acceptance.

Oh damn we are hijacking the thread.

Other Comments by Dr Doctor

33. Comment #220013 by Steve Zara on July 28, 2008 at 12:47 am

 avatarComment #220011 by Dr Doctor

"There are plenty of existing languages that allow precisely that already, and in reasonably clear English: Ruby, Python, TCL."


That was written without even looking at your code.

It was written in response to:
The real power is that it allowed people who wouldn't normally program cross-system code to do so without too much understanding.


We could talk in detail about XML. I have been using it since it the late 90s, and have worked with people pioneering its use in chem- and bio-informatics.

But that is wildly off topic...

You may note on that on another thread, I have just agreed with every word of a post of yours :)

Other Comments by Steve Zara

34. Comment #220015 by Buddha on July 28, 2008 at 12:49 am

 avatar
I had a reaction similar to yours when it was introduced "Oh it is just like REXX and Object REXX" through to "what is the difference between this and COBOL".


Aaaah, those were the days - brings me right back to my youth when computers caused streetlights to flicker across town when you turned the power on. My first job was writing REXX code on an IBM 370 VM/CMS system.

Other Comments by Buddha

35. Comment #220017 by DamnDirtyApe on July 28, 2008 at 12:56 am

 avatarI am very excited about this. Simulating biology has huge potential. The folding programs have already paid huge dividends for research, this is merely the next highly impressive step.

Other Comments by DamnDirtyApe

36. Comment #220018 by Dr Doctor on July 28, 2008 at 12:56 am

 avatar"That was written without even looking at your code."

Why code in italics? But again, you are missing the point. The code was there to demonstrate similarity of layout with COBOL, REXX etc. The idea being that like an iceberg, the "look" of the thing is often only the tip. I'm not a great explainer, so it is probably my fault you aren't getting it.

"Aaaah, those were the days - brings me right back to my youth when computers caused streetlights to flicker across town when you turned the power on. My first job was writing REXX code on an IBM 370 VM/CMS system. "

Yes, why on earth did we ever stop using COBOL, for that matter why did we ever leave the ocean? Damn limbs and air breathing lungs, domain specific apparatus! I remember the days when we just had cell division, none of this fancy schmancy sexual intercourse!

Other Comments by Dr Doctor

37. Comment #220021 by Steve Zara on July 28, 2008 at 1:08 am

 avatar
Why code in italics?


To emphasise that that was a part of the post I hadn't looked at.

But again, you are missing the point. The code was there to demonstrate similarity of layout with COBOL, REXX etc. The idea being that like an iceberg, the "look" of the thing is often only the tip. I'm not a great explainer, so it is probably my fault you aren't getting it.


I assumed the point was that you had written something easy for non-specialists to use that sat above a lot of useful functionality.

My point was that there are already languages that are easy for non-specialists to use - Smalltalk, Python. Python is a particularly good systems language, yet was chosen for the OLPC project because of its ease of use.

Other Comments by Steve Zara

38. Comment #220022 by Appleby on July 28, 2008 at 1:09 am

I've noticed that people with little or no background in computing often tend to think programming a computer to do something is out-of-this-world.

Other Comments by Appleby

39. Comment #220023 by Dr Doctor on July 28, 2008 at 1:13 am

 avatar"I assumed the point was that you had written something easy for non-specialists to use that sat above a lot of useful functionality."

OK, so you did get the point.

"My point was that there are already languages that are easy for non-specialists to use - Smalltalk, Python. Python is a particularly good systems language, yet was chosen for the OLPC project because of its ease of use. "

Yes, there are now.

These days if I was looking at doing something like that I wouldn't bother writing a new language, I'd use an existing one and get that to drive my runtime as so many people use general purpose languages that have open source interpreters and the languages are more extensible.

But given the whole thing was registry based (you "register" the tasks at execution in a network attached registry - at the time SNA based so the example of using a webpage is my modern spin on it), and someone runs the task and it can run anywhere on the plex in whole or in part (A runs main task, B runs subroutine x) and there was no way of describing that in the language environments I was allowed to use at the time that would have been taken up by the people whose problem I was trying to solve. It saved a lot of time and therefore money.

Which is kind of the point.

(edit: Not sure where "seconds" came from there.

Other Comments by Dr Doctor

40. Comment #220025 by Steve Zara on July 28, 2008 at 1:21 am

 avatarComment #220023 by Dr Doctor

But given the whole thing was registry based (you "register" the tasks at execution in a network attached registry - at the time SNA based so the example of using a webpage is my modern spin on it), and someone runs the task and it can run anywhere on the plex in whole or in part (A runs main task, B runs subroutine x) and there was no way of describing that in the language environments I was allowed to use at the time that would have been taken up by the people whose problem I was trying to solve. It saved a lot of time and therefore money.


The delights of distributed software! It's all so much easier these days, with systems like LINDA (as in JavaSpaces).

However, I think you are backing up my point about this article to an extent. There are modern languages that can be used by just about anybody that can integrate with existing libraries written in just about anything, which is why I at least raised one eyebrow when I read about the design of a new language in this article.

I guess this may just be my world-weary battle-scarred attitude, resulting from bitter experiences.

Other Comments by Steve Zara

41. Comment #220027 by Dr Doctor on July 28, 2008 at 1:23 am

 avatar"However, I think you are backing up my point about this article to an extent."

Yes, probably, I'm going to shut up now. ;)

Other Comments by Dr Doctor

42. Comment #220044 by dvespertilio on July 28, 2008 at 2:32 am

Steve and Dr Doctor: I'm glad you two can discuss all of this like you do. But for us "techno barbarians" it's all Greek. I have almost no idea what the two of you are talking about. Some of us are pretty out of touch when it comes to computer languages and such.

Other Comments by dvespertilio

43. Comment #220045 by Dr Doctor on July 28, 2008 at 2:34 am

 avatarSorry.

Other Comments by Dr Doctor

44. Comment #220046 by Steve Zara on July 28, 2008 at 2:37 am

 avatarComment #220044 by dvespertilio

In plain English - I am skeptical for two reasons. First, that these people seem to be discovering techniques that have actually been in use in general software development for decades. Secondly, any statement about a new programming language should raise at least mild concerns, because new programming languages require a huge amount of work to be put in if they are going to be widely used - acceptance can take years if not decades. Even the might of Microsoft can fail in this respect.

Other Comments by Steve Zara

45. Comment #220048 by LaTomate on July 28, 2008 at 2:46 am

 avatarAppleby:

I've noticed that people with little or no background in computing often tend to think programming a computer to do something is out-of-this-world.


Yeah, we're magicians. We do magic. There's nothing we cannot do, no problem we cannot solve. Yet nothing we can do well.

When something goes wrong in any part of your company, it's probably our fault. If something goes right, it definitely has nothing to do with us though.

Common knowledge :p

Other Comments by LaTomate

46. Comment #220049 by DasSquid on July 28, 2008 at 2:53 am

 avatarAnother step towards Biometric systems.

Nothing frightens me more than a world where our personal information is just a glance away.

Granted I'm no criminal or terrorist or whatever, but it peevs me to no end when entering a country like America and Japan that they take a photo of me and scan my fingerprints.

Soon there's the retinal scans, then there's the GATTACA style pin pricks.

Digitising Biology is a frightful future.

Other Comments by DasSquid

47. Comment #220056 by dvespertilio on July 28, 2008 at 3:22 am

Comment #220049 by DasSquid

I agree with you, but unfortunately I think this may very well be the future awaiting us. And soon we may all be redundant anyway, to be replaced by who knows what.

By the way, I found this at a new social forum member's blogsite. It sort of puts everything in perspective:

http://iacs5.ucsd.edu/~pbang/tpv.swf

Other Comments by dvespertilio

48. Comment #220062 by Chris Davis on July 28, 2008 at 3:47 am

 avatarFor those interested in seeing more on this, the Virtual Cell Program (ick) is at
http://vcp.med.harvard.edu/index.html

The hompage of littleb is at
http://www.littleb.org/

Check out the PP presentation at
http://www.littleb.org/materials/sri-feb-6-2008.ppt

It's intriguing stuff, but I have an uneasy feeling I've been here before: they've found repeatable cellular processes and characteristics that lend themselves to algorithms and metadata (and this ain't protein folding - not yet). So they've 'written a language to make it easier to work with them'.

Essentially they've piggy-backed on Lisp, and are handing off the tricky bits to Matlab. Fairy nuff. And it seems to work.

They key is whether it will actually yield any revelations. If it does, it might gain acceptance. I just have a sneaking deja vu about a situation where the work's all driven by a feeling that if we can get the simple stuff we already know about to work, the complex stuff will just follow as an emergent property. Hmm, maybe, as Carl used to say.

And despite the wise words above from Mr. Zara, I itch to do the whole damn thing in FORTH - faster, more efficent, more logical - and utterly incomprehensible to anyone new to RPN and stacking...

CD

Other Comments by Chris Davis

49. Comment #220069 by Dr Doctor on July 28, 2008 at 4:05 am

 avatarIt is very easy snippy to be about an innovation, no matter how small. Judge them by the results, not by any aesthetic sense of what should or should not happen.

So this:

"They key is whether it will actually yield any revelations. If it does, it might gain acceptance."

..is what is important.

Other Comments by Dr Doctor

50. Comment #220075 by Steve Zara on July 28, 2008 at 4:13 am

 avatarComment #220069 by Dr Doctor

I'm not being snippy. These are real criticisms based on decades of experience, and based on actually looking at the site supposedly promoting this new language.

It is sensible to look at claims of anything new and revolutionary skeptically.

Running LISP on Matlab, and with only a currently a Windows-based deployment available is not (yet) anything to get excited about.

There are some truly revolutionary things going on in science, such as the start-up of the LHC.

Other Comments by Steve Zara
Reload Comments | Back to Top

More Comments: 1 2 | Next | Last

Comment Entry: Please Login

Register a new account

Username:

Password: