Domain: ucl.ac.be
Stories and comments across the archive that link to ucl.ac.be.
Comments · 73
-
Re:Only if software is ported both ways.
Yes, I realize that KDevelop + QT Designer (or whatever it's called) is to many people a much more attractive development environment than the GNOME alternative.
Why didn't you mention them by name? Anjuta and Glade. Neither program is as intuitive as its KDE counterpart, but a quick stroll through a tutorial or two will get you on the right track. The problem is that for a long time the GTK/Gnome tools for Win32 were terrible, and porting an application built with GTK was a major chore. It's much better now. GTK-- on Debian unstable is version 2.4.8 and on Windows it's 2.4.8
Even so, just compiling your code on Win32 is a PITA. Dev C++ has made it easier to get a functional mingw build environment (at least for pure GTK or wxWidgets) but the last time I tried it there was no support for importing Kdevelop/Anjuta projects...you had to go through manually and import individual source files into a new project. -
Re:Supprised
Check out tkinter and wxPython.
Unless you use Linux.
I can't stand tkinter and wxPython - wxPython/wxWidget's GTK implementation seems to use some nasty generic tree instead of GtkTreeView. It's _ugly_ in a big way. tkinter doesn't rely on an underlying toolkit in Linux and is also rather ugly.
I recommend pygtk There's even Windows bindings for it - and the applications look almost native on Windows. IMHO, more 'native'-looking than wxPython on GTK.
I generally find PyGTK to be cleaner than wx too, but that's just my opinion. :)
And then there's PyQT ... but I've never used it before ... anyway, I'm a gnome user ;) -
Don't extend. Its overrated.
Honestly, its easier to write a recursive descent parser by hand for a programming language than you think, and interpreters are ridiculously easy unless you're worried about making it fast, which is way overrated too. It mattered with 640KB of RAM at 20MHz, but these days, its just stupid to care unless you notice its insanely slow.
First off, if you've not found this link: http://compilers.iecc.com/crenshaw/, then I recommend you start with it. While its about writing a compiler, it really help make parsing much clearer.
Scheme is a good language to check out if you want to start with another design(a scheme interpreter can be written in a few hours, even in C, if you're slick, even if you're not, it would be short project to get 90%).
Some other reference material: Parsing Techniques(free online). Also: Modern Compiler Design by the same guys and well worth the investment. Concepts, Techniques, and Models of Programming Languages, teaches kernal theory of language design, and may open your mind to some other techniques you may not be aware of.
Checking out the archives on Lambda The Ultimate would be wise too. Also, if you're in Boston on December the 4th, you might check out the Lightweight Languages Workshop at MIT.
-
STCPA "real" replacement to TCP is STCP
You get datagrams like in UDP but they are sent re liably.... or not depending on what you want. I believe this has been quietly implemented in CISCO routers and Unix OS vendors network stacks over the past few years.
-
Re:What?!
Universite catholique de Louvain - Biggest university in Belgium
UCL
Comp Eng. dept. -
Re:What?!
Universite catholique de Louvain - Biggest university in Belgium
UCL
Comp Eng. dept. -
Re:$4.8 billion
Apple has $4.8 billion in total assets
Total assets are a far cry from cash, and include land/improvements, office equipment, machinery, etc... as well as cash. Also included would be investments in other companies, which Apple has been known to do. -
Don't fully agree.Show me one benefit of Lisp over Oz. And there are the drawbacks of Lisp, too. It has a really steep learning curve, and there are no good free (as in software) development environments, as far as I know. (IANALisp Expert, though). Just you, Emacs and the Lisp interpreter.
Lisp is as powerful as mathematics, but there is more to a language than its semantics. It has to be accessible, too.
-
Maybe Oz
-
Re:What do you use python for?Sorry, if I was any offensive. if you are not good at programming, but still have a motivation (you seem have as youd a patience to look at those snipplets for an hour), then you'd better go learn programming starting from high-level concepts.
Read the book Concepts, Techniques, and Models of Computer Programming, which will teach you programming in concepts, rather than to specific language or paradigm practices. Being armored with concepts any language or paradigm will be much easier for to be understood.
-
Newer Copy Available
I'm not sure why the article links to the April 26th draft version of the book, when the intro page itself has the link to the much newer June 5th version.
http://www.info.ucl.ac.be/people/PVR/booksingle.pd f
I look forward to reading it from the intro, however, might be really worthwhile. -
Re:Working together to defeat Intel
I like AMD as much as the next guy (running an 1800 XP), but I'm not sure why Intel needs to be defeated... good company, good products.
Intel doesn't need to be defeated, just "competed".
Intel (and every other company) simply needs to be in competition, in a hotly-contested race to produce high quality products for the lowest price in a well-informed marketplace
Absence of competition permits, even encourages companies to produce lower quality products because they can charge high prices for them [1[PDF]][2[PDF]] and make a greater profit doing so.
If Intel hasn't done this so much yet, then it's to their credit, but without competition, nothing will prevent it from happening in the future.
-
Uhm
Isn't functional programming (Miranda, Haskell, Gopher, ML, LISP, Scheme, Bla) a KIND of declarative programming? As is logical programming (Prolog, deductive databases).
Well anyway, I'd like to point out that some of the most powerfull features of declarative programming and object orientation come together in Hassan Ait-Kaci's
WildLIFE.
It features strong typed structured datatypes with inheritance, lambda terms, unification, resolution, backtracking,... you name it.
It may be outdated, but it's definitely worth investigating if you're into perversely powerful programming languages and like the declarative methodology. -
Re:game referenceYou can even use Atari sticks in a PC joystick port with the Emmanuel Fernandes' adapter here.
--
-
Enough coffee!!!I hope people will remove coffee-coloured glasses, open their eyes, open their mind, begin to see and start to think. Then the time for real programming languages and real design techniques will come. Meanwhile I recommend to read the following books:
- Why Functional Programming Matters
- Haskell: The Craft of Functional Programming Second Edition
- FAD: A Functional Analysis and Design Methodology
- Structure and Interpretation of Computer Programs
- Concepts, Techniques, and Models of Computer Programming
- CLOS Meta Object Protocol
So, still keeping some Java projects, I've decided to try something else. First I've tried was Python, which I used for while in OS automation scripts, but now I've tried to use it for a bigger scope: "servlets", UI, JMS-like messaging, XSLT, text processing, RDF, and finally in some AI stuff using FP, which is poor in Python, but at least it is there. By the way, OOP in Python is also far away from being perfect. It is slow on massive calculations, although it is fast enough for script -based OS automation, UI, "servlets" and XML processing (but not on huge files). it is dynamically typed and it has lazy evaluation - both very important features for messaging. Python is less known, comparing to Java, but its community is not really tiny as Perl and other *n*x hackers usually know Python.
After Python I've tried Erlang, Oz, OCaml, Haskell. I think Erlnag is ready for distributed messaging and for OS automation. The others are not - the lack of libraries. Although, each of them, Oz, OCaml and Haskell, has a very great potential if some big corp will do support. Any of these three may need just 10% of Java marketing to collect a crical mass and become recognized.
Before Java I had an experience also in C, Perl, Scheme, Lisp and Tcl, in few projects each. C is very "crashy" in you hands if you don't use it every day. Tcl does not handle well big enough apps. Perl is a "write-only" self-obfuscated lang. The only choice left is Lisp and Scheme. Lisp is very power for big standalone apps, Scheme is convinient for being embedded somewhere.
So, in the finals I've got Python, Erlang, Scheme and Lisp. Not a bad choice.
Coming back to UML. It does same help for Python programming as for Java. As for Lisp/Scheme and Erlang, I think that things like UML are too primitive to fit. On serious languages you need a serious math, and usually diagram is just an iluustration in the math article, not a whole article.
So, if you tired from kid pictures get the math in your hands
:) -
Re:Think like a computer scientist?
Agreed. With SML/O'CAML, Scheme, Erlang and Mozart around, using Python to teach Computer Science is pretty sad. Python could be considerded a modern programming language if the calender read 1982. Concepts, Techniques, and Models of Computer Programming has a lot of good material for those interested in Oz/Mozart w/ CS.
-
Re:A Famous One Is...There is a book in progress that is in the spirit of SICP and addresses these concerns. You can check out the latest draft at Concepts, Techniques, and Models of Computer Programming.
I'm one of the authors and of course I'm enthusiastic about the book, so don't take my word for it. My coauthor and I have been working on it for two years and we've taught courses from it. It distills ten years experience building the Mozart system.
Peter
-
Re:A Famous One Is...There is a book in progress that is in the spirit of SICP and addresses these concerns. You can check out the latest draft at Concepts, Techniques, and Models of Computer Programming.
I'm one of the authors, so don't take my word for it. We've been working on it for two years and we've taught from it. It distills ten years experience building the Mozart system.
-
Re:Concept Programming
Concepts, Techniques, and Models of Computer Programming - with Practical Applications in Distributed Computing and Intelligent Agents does a fantastic job of presenting a unified view of programming. In this case, it's based on Mozart, but anyone inspired to learn should benefit by reading it. Enjoy.
-
Use the right tools: multi-paradigm programming
Using OO for everything might well be overkill. Have a look at
Teaching Programming as an engeneering discipline. Here is a statement showing some of their goals:
The current trend in computer science education is to restrict the student to one or two models. The most extreme case is where a single rather complex model and language, namely object-oriented programming in Java, is used as a general-purpose approach with which all problems should be solved. This trend is driven by market forces and has no scientific basis. One goal of the book is to be a counterweight to this trend. In addition to giving the student a deep insight, this has immediate practical benefits. Many problems that are hard to solve in Java become simple when viewed in the proper computation model. For example, both concurrent programming and user interface design are difficult in Java. The book shows how these two areas can be much simplified.
Good, read, even if you don't accept it's standpoint. -
Don't choose on buzzwords
Can you state (actually write down) your reasons for all these "needed" concepts?
If not, you might want to look at Teaching programming as an engeneering discipline for a a well-done introduction into programming concepts and when to choose which, and why normally the least complex feature that does the job is the best one, and why this is as true for programming languages / concepts as for the rest of the world.
Hopefully you can choose wisely after that.
Cheers, Mathias -
Silicon-on-Insulator (SOI) technologyThe article says AMD's new processor will utilize SOI technology. A great page on SOI technology is UCL/DICE - SOI (Silicon On Insulator) and quantum devices. Heavy stuff. There's also a nice explaination of SOI from IBM:
SOI refers to placing a thin layer of silicon on top of an insulator, such as silicon oxide or glass. The transistors (switches that are used in microprocessors) are then built on top of this thin layer of SOI. The basic idea is that the SOI layer reduces the capacitance of the switch, so it operates faster.
Earthweb has a detailed explaination of SOI by Robert Richmond. Apparently, SOI was invented by IBM.IBM has built and tested SOI-based chips that have 20-35 percent (frequency) performance gain or 2-3X lower power at the same frequency as bulk CMOS technology. This is equivalent to about two years of progress in bulk CMOS technology.
The ultimate goal is to use SOI as the substrate for mainstream CMOS technology used in the manufacturing of microprocessor chips that power computers and other emerging electronic devices.
-
Beowolf has left the building....
Barcelona, Belgium, Japan, Cambridge Uni (the n hundred year version), Italy and Korea are just some of the places running Beowolf clusters. Its already out there, stop the shipping from the US of PCs and the software and it will be picked up from one of these places outside the US.
Ma: Where is the horse ?
Pa: She's bolted.
Ma: Well you'd better bolt the door now.
Things the US should stop exporting: McDonalds (eat British, eat Burger King :-), Windows and Sunny Delight.