User loginNavigation |
archivesThe Simplicity of ConcurrencyMy first post. I've been reading LtU regularly for a while now and it is truly great. Many thanks to all who are involved. Karl Fant of Theseus Research recently gave an interesting presentation, titled "The Simplicity of Concurrency", on what he believes to be a conceptual model that reverses the traditional view of sequentiality as simple and concurrency as complex. He focuses somewhat on a hardware implementation, but explains how it can be applied to compilers and programming at any level. The presentation is available as streaming audio or audio+video from http://www.parc.com/cms/get_article.php?id=465 My summary would be: Anyone care to correct me or Karl? I am by no means a language guru, so I may have a few concepts crossed. A Case for Formal SpecificationFor once, a story from Kuro5hin. Formal Specification helps build more robust, more maintainable software with fewer bugs and defects. It has a long history, but it is still a developing field. While it may not be suitable for all software projects, a case can be made that there are many projects not currently using formal specification that stand to benefit from it. As the methods and tools for formal specification develop it is increasingly becoming something that developers and software engineers should learn to use to their advantage. I haven't had a chance to read it yet, but this story mentions SPARK and CASL, and seems reasonably well-researched. By Frank Atanassow at 2005-08-02 11:44 | Software Engineering | 1 comment | other blogs | 7144 reads
Causal Nets
Causal Nets
The network approach to computation is more direct and "physical" than the one based on some specific computing devices (like Turing machines). However, the size of a usual -- e.g., Boolean -- network does not reflect the complexity of computing the corresponding function, since a small network may be very hard to find even if it exists. A history of the work of a particular computing device can be described as a network satisfying some restrictions. The size of this network reflects the complexity of the problem, but the restrictions are usually somewhat arbitrary and even awkward. Causal nets are restricted only by determinism (causality) and locality of interaction. Their geometrical characteristics do reflect computational complexities. And various imaginary computer devices are easy to express in their terms. The elementarity of this concept may help bringing geometrical and algebraic (and maybe even physical) methods into the theory of computations. This hope is supported by the grouptheoretical criterion given in this paper for computability from symmetrical initial configurations.The nets of this paper are different from belief nets or Bayesian nets, which are also known under name "causal nets". No doubt, modeling the history of computation rather than the current state is nothing new, but this paper tries to find new applications for that. A Java/Python hybrid?Like a lot of recent graduates I'm trained in Java and have had it drummed into my head why the software industry likes a rigid, procedural, statically typed, OO language. (I know not everyone agrees so please don't argue this). I myself like Python which is not statically typed or rigid but is small, elegant and readable. I have been wondering for a while whether a OO, procedural language exists with the rigidness of Java but a more Python like syntax. Something like: class Stack: public procedure add(item: T): array.append(item) private array : Array(T) # etc.... Can anybody suggest something? Mercury Vs PrologSome time ago, Mr Ehud Lamm posted a link to a short comparison between Prolog and Mercury, I am very interested in this paper. Is there any chance to see it, please? On the other hand feel free to give yours opinion on this subject. I heard that mercury is purely declarative in contrary to prolog? Dont u think that prolog is the purer one? |
Browse archivesActive forum topics |
Recent comments
22 weeks 2 hours ago
22 weeks 6 hours ago
22 weeks 6 hours ago
44 weeks 1 day ago
48 weeks 3 days ago
50 weeks 14 hours ago
50 weeks 14 hours ago
1 year 4 days ago
1 year 5 weeks ago
1 year 5 weeks ago