Slashdot Mirror


Mozilla x (Perl + Python) = New IDE

WhyteRabbyt writes: "ActiveState have announced Komodo, an open-source IDE for Perl, Python and Javascript. The application framework is to be based on Mozilla. The press release is here." tenchiken contributed a bit more information about the project, writing: "More information is here , including the announcement a few days ago that they would be writing python and perl bindings to XPCOM. Like Perl? How 'bout client side perl!" No, it's not out yet -- but it's cool to see Mozilla as the engine behind yet another project.

55 of 173 comments (clear)

  1. Mozilla in 2001; "It's everywhere everywhere!" by Spoing · · Score: 5
    Maybe I'm a little nuts. When I mention this to others, they don't seem to get it. I'll let you decide...

    I'm not surprised that Komodo uses parts of Mozilla this way. It's an obvious and practical job that Mozilla is well suited for.

    In the next six months, I would be stunned if more programs don't use parts of Mozilla in exactly the way that Komodo does -- both in public and for private projects -- from custom document archiving, information kiosks, and no doubt in the 'Internet Appliances' we're seeing more and more of.

    I don't expect that most of these new programs will be anything like web browsers. Mozilla -- as the mother of all monster widget sets -- is well suited to to be part of just about any program.

    Mozilla has the ability to turn into a pervasive toolkit, as pervasive as Perl but even more visible to the user.

    I pointed this out to a Mac user once, and they responded flatly "Well, I like IE".

    Not getting the point, I said "Well, you could use IE as your browser, but parts of Mozilla will show up in more programs...it's the basis of many other programs."

    Mac user: Blink. Blink. Silence.

    On a different note, the only thing that concerns me with Mozilla are security problems with XML, though I'd expect XML engines to have problems once people push it a bit more. The security problems that I'm not aware of, similar to the ability to get postscript printers to do odd things -- like serve up web pages.

    --
    A firewall can not protect you from yourself. Turn off what you do not need. Do not use the firewall to do your work.
    1. Re:Mozilla in 2001; "It's everywhere everywhere!" by extrasolar · · Score: 2

      (whats with this "more informed user" crap?)

      Mozilla could begin a bad trend. Where we have configure all our apps for consistancy.

      "Yeah and an even more informed Mac user would actually spend some time making the native UI for Mozilla, instead of sniveling about how it's not supported. Unfortunately, Mac users just want things done for them, and have no initiative to better an application for their own fucking operating system."

      Haven't you been paying attention? Computers aren't toys. They are *for* lazy people. Real men write letters by hand and calculate spreadsheets with abacuses. Lazy people use their computer for these things.

      If Mac people want things done for them, heck I, a Gnu/Linux user, want things done for me. Like a cron daemon to run scripts and for my logs to be rotated. I also want my apps to be consistant without me getting off my butt to do it. I don't want to write XML by hand to code such a thing. And then have it be slightly but noticable off.

      I like GNOME. Because it changes themes of *all* gtk apps. When I install Mozilla, it will change themes of all gtk apps *but* Mozilla. That isn't so bad in the GNU/Linux world, because we are used to that. But on the Maacintosh, they already have consistancy. Why would they want to give that up for some dissident they don't need? I certainly won't.

      Perhaps someone on the Mac platform will embed the rendering component into a native Mac app like they will being doing with GNOME and (I think) KDE. That is the optimal solution IMHO.

      So yeah, I *am* lazy. That's one of the reason I use GNU/Linux. So I can have my tasks done for me.

    2. Re:Mozilla in 2001; "It's everywhere everywhere!" by Spoing · · Score: 2

      A slightly more educated Mac user might have commented on how the Mozilla widgets look like 'Winblows', and there was no way in hell that he was going to touch any Mozilla-based application until it started to look and act like a Mac app.

      And, if they were a little more informed they'd know they'd know about chrome!

      --
      A firewall can not protect you from yourself. Turn off what you do not need. Do not use the firewall to do your work.
    3. Re:Mozilla in 2001; "It's everywhere everywhere!" by Wellspring · · Score: 3

      I'm not surprised.

      One of the advantages of open source development is that, if you have enough projects going, you have a tremendous potential for reuse of code. Another is that since APIs and file formats are genuinely open standards, modules become more consistent and encapsulated. Still another consequence of using open standards is that 'embrace and extend' becomes very difficult, if not impossible. Adding new features is easy, but it is tough to lock your users into your product line.

      Result: (ok this isn't anything new for us, but I'm getting to my point) UNIX-- where you have a million highly optimized tiny programs that do one thing well (and are reused everywhere by everything) instead of a few monolithic packages that barely interact with one another.

      OK, nothing new so far. Here's the point: this is old hat to us, but a brand new concept to the end-user world! The whole idea that you could use parts of one application in another is just foreign to them. In the DOS/Mac world, features come from individual blocks of code. In the open source world, features are derived from the links between those blocks. If you didn't grow up with it, it is a totally new way to think about computing.

      Another result- development of brand new applications will be faster, too, since good code gains value with every re-use with minimal development, rather than having to be reimplemented.

      Say someone wants to create a WYSIWYG word processor, or a page layout program. Or some totally new application concept. Well, hey, let's just use pieces of Mozilla. And the program is in alpha release a few months later. I suspect that it will take years for the full significance of the concept to hit people.

    4. Re:Mozilla in 2001; "It's everywhere everywhere!" by Spoing · · Score: 2

      Play nice. Not all Mac users are newbies.

      I didn't mean to imply they were. This one was fairly experienced -- but not a tech -- so I was a bit surprised about thier dead-pan answer. In fact, I'll be quite happy to take any spare Mac hardware -- PPC+ -- you might have!

      --
      A firewall can not protect you from yourself. Turn off what you do not need. Do not use the firewall to do your work.
    5. Re:Mozilla in 2001; "It's everywhere everywhere!" by Spoing · · Score: 2
      Bits are bits...I agree that you should always use what works for the task at hand. If you're focused on Python, it's probably because of what you're doing now.

      Mozilla is not limited to being a UI or part of an IDE...or a web browser. The ability to hook it up for your own uses is what makes it valuable.

      If your tasks change, you might see value in using Mozilla. I've not found it to be bloated, but it's not built to be a single-function widget...so I don't need to see it work like one. Stripping out the parts that aren't needed -- and that will happen -- will make it a bit peppier. The only question is what parts aren't needed? It's limited to the task at hand.

      --
      A firewall can not protect you from yourself. Turn off what you do not need. Do not use the firewall to do your work.
    6. Re:Mozilla in 2001; "It's everywhere everywhere!" by Spoing · · Score: 2

      Sorry, but Chrome is a poor excuse for native UI widgets. Even if you can match the look - not always possible - the behavior is usually pretty shoddy.

      I don't get that you're "sorry".

      Instead I hear "Bitch, bitch, bitch". Do you have access to the source or not? What complaints do you have now? Are you doing anything to change things, or is it all complaints?

      --
      A firewall can not protect you from yourself. Turn off what you do not need. Do not use the firewall to do your work.
    7. Re:Mozilla in 2001; "It's everywhere everywhere!" by Darchmare · · Score: 2

      ---
      Yeah and an even more informed Mac user would actually spend some time making the native UI for Mozilla, instead of sniveling about how it's not supported.
      ---

      Yep, imagine that. Someone who doesn't want to code every app he or she uses. Believe it or not, some of us have a Real Job (involving coding, ironically) or a life outside computing that we'd like to see once in a while.

      Sorry, but not everyone lives in your little world. For some of us, coding a UI around a browser isn't an option. But do you, as a coder (although I'm not really convinced you are one) really prefer to code without any input from your userbase? If so, I'd hate to see the quality of any software you've written...



      - Jeff A. Campbell
      - VelociNews (http://www.velocinews.com)

      --

      - Jeff
    8. Re:Mozilla in 2001; "It's everywhere everywhere!" by Darchmare · · Score: 2

      ---
      And, if they were a little more informed they'd know they'd know about chrome!
      ---

      ...and the most informed of all will sneer derisively at the concept as chrome can never perfectly replicate the intricacies of an operating system's native widgets (look or feel), and as soon as the user decides to use a system-wide theming program such as Kaleidoscope (or the built in MacOS theming system) Mozilla looks awfully out of place.

      Sorry, but Chrome is a poor excuse for native UI widgets. Even if you can match the look - not always possible - the behavior is usually pretty shoddy.

      (And it's going to be even worse when MacOS X hits...)

      - Jeff A. Campbell
      - VelociNews (http://www.velocinews.com)

      --

      - Jeff
    9. Re:Mozilla in 2001; "It's everywhere everywhere!" by Darchmare · · Score: 2

      ---
      I don't get that you're "sorry".
      ---

      Really?

      ---
      Instead I hear "Bitch, bitch, bitch". Do you have access to the source or not? What complaints do you have now?
      ---

      It's called 'feedback'. On occasion, some developers are known to be responsive to it, rather than telling their userbase to fuck off or to code it themselves.

      This isn't some obscure command line utility, this is Mozilla/Netscape which - I assume - is meant to be used extensively outside of the development community that created it. Since many developers can't develop user interfaces for shit (and the better ones will admit it), I'd hope that they'd be more receptive than you.

      ---
      Are you doing anything to change things, or is it all complaints?
      ---

      Guess what? Good companies spend a lot of time soliciting feedback from the public. The above statement makes the dubious assumption that my 'complaints' (for lack of a better term) aren't an attempt to 'change things'. I disagree, and hope that you're not as rude to your own userbase.

      ...Anyhow, would you rather respond to my actual points re: Mozilla's user interface, or are you going to attack me personally instead?


      - Jeff A. Campbell
      - VelociNews (http://www.velocinews.com)

      --

      - Jeff
  2. Re:IDE by ucblockhead · · Score: 2
    And how does Visual C++ help me when I need to build the project on Linux or Solaris?

    It doesn't, of course. But the problem there is not the concept of the IDE.

    What you are missing is the ease with which a good IDE will do much of that stuff. Visual C++ will tell you the parameter info of a function in a tooltip if you just position the mouse over it. It will put the same tooltip info up as you type parameters. Without any user interaction. It will give you a list of member functions to selection from if you type in a class instance and the '.' or '->'. Again, without any user interaction.

    Yes, you can get the same information with VIM. But you can't get it as easily, or as transparently.

    No, IDEs aren't perfect. But on (for example) a C/C++ project under Windows, IDEs clearly beat any editor I've ever found.

    --
    The cake is a pie
  3. Re:IDE by chompz · · Score: 2

    People have been using IDE's as a reason for not learning proper software design. There is no excuse for not knowing what function is required and what files need to include it prior to writing. It seems to me that an IDE is just another way to DUMB down the launguages to such a point as to no require people to actually know how to program. Programming is more than typing in the functions, its planning for how everything will work together in advance, not kludging your way along. As it stands IDE's do not provide a software DESIGN tool, and therefore are a restraint to how well a piece of software ends up being produced. I can think of thousands of software productions which had a great idea, but failed to design a piece of software which did its necissary function and did so in a way which was the result of a proper software design process. IDE's make it too easy to lameify coding to the point where it has no plan, except the final product, which is not enough. Don't piss me off about this, I'm planning a huge research study on it...

    --
    Spring is here. Don't believe me, look outside!
  4. "Real Soon Now" Options by Baldrson · · Score: 4
    Cross-browser compatibility is, and will remain, the most important problem facing cross-platform developers.

    As someone who has fielded around 100,000 lines of Perl, among the many "Real Soon Now" options for cross-platform web software development, I side with the strategy exemplified by Tibet 's approach to cross-browser compatiblity.

    The difficulty of writing an application that will run on a variety of web browsers is already a primary challenge of software development. Adding more languages to the mix will only make things worse. Adding the relatively static Java to the dynamic Self-like Javascript was one of the biggest mistakes in the short history of the web (one for which Steve Jobs must accept a lot of the blame, but that is another story). By biasing toward installed language multiplicity rather than downloaded compatability-layer consistency, Komodo is in danger of becoming another, albiet lesser, mistake. IE isn't going to relinquish its dominance for a long time to come, not even with the US Federal Goverment fighting it.

    IMNSHO, on the strength of environments like Tibet, demand for programmers of Javascript will beat Java "real soon now".

    Watch this site for developments.

  5. Re:And here's how to make it happen by Oestergaard · · Score: 2

    The whole point of my argument is, that Emacs is not an IDE, neither is bash, or grep, or sawmill.

    But those and a lot more tools together *form* an IDE, which you have right in front of you already if you have those tools installed.

  6. Re:IDE by Patrik+Nordebo · · Score: 2

    Emacs can do this. Currently there is support for editing C, C++, elisp, Perl, Tcl, Python, Scheme, Common Lisp, ML, Haskell, Ada, Fortran, TeX, awk, Java, and many more languages. It also supports gdb and ddd for debugging, CVS or RCS for version management. It can run make (or some other build system) and parse error output well enough to let you easily jump to the error. It has support for ctags, etags and cscope for searching for definitions in a number of languages, and there is also the speedbar for browsing source files. The OO-browser is a Smalltalk-like class browser for (X)Emacs. Integration with Common Lisp systems is excellent. Etc.
    I could go on, but I think I've made my point, namely that whatever you need, Emacs either does it or can be made to do it. :) Unless you don't have enough memory or fast enough CPU, in which case something else might be a better idea...

  7. Also check out this RAD GUI IDE for Python. by Domini · · Score: 2

    There is a project under a GPL licence with which you can build RAD GUI applications for Python that will run on win32 and Linux... It is currently quite alpha, but you can already do some nifty things with it... It may even be competition for Linux Delphi... -ponder- Go HERE .

  8. Re:Sticky breakpoints, & less typing by Oestergaard · · Score: 2

    Yes I have used an IDE. I used Borland/Turbo C in the old days, and IBM VisualAge for C++ later on. Then I found GNU/Linux.

    As part of my job I had to port a large program to NT, so I decided to give VisualStudio a go, after all, I like IDEs very much (I do prefer the X+sawmill+Emacs+make+bash+... IDE, but the others were nice at the time too). I was fairly surprised that they actually had regexp search in, but the joy ended the second I needed to pipe input from one search into another, or just search all files matching a specific pattern... There are no pipes in the GUI unfortunately.

    I agree that you don't want to do repetitive typing yourself if it can be avoided. If you could click a button (or preferably, as you already have your hands on the keyboard, just press a specific key) to perform some operation, that is as a starting poing a ``good thing''. This is actually what Emacs tries to do, and that's why you use C-s and C-r for searching, and "C-c C-v i" (longer sequence for less frequently required function) for inserting new files in version control. I don't agree that Emacs is entirely nice here, I just haven't found a better editor for code yet (yes, I use vi for config files and kernel code, but besides that it's emacs all the way).

    However (!) If I did find a better editor, it would plug right into my existing framework of window manager, bash, grep, gazillions of other tools. You can't hot-plug the editor in VS.

    Anyway, I did really try, believe me, I'm an open minded person, but Visual Studio is in my oppinion a *very* poor substutitute for a *the*real* IDE, for someone who knows various IDEs generally and *the*real* IDE specifically.

    I don't know about sticky breakpoints, I rarely debug code (that way). I'd be surprised if GUD didn't supply such a feature (GUD is actually a little fun because while being the Grand Unified Debugger, in Danish it is also the word for God, so, I found God when searching for a debugger ;)

    The point about repetitive work I think needs another angle of view. Yes, we want to avoid it, and *no* you definitely do not want to type the same stuff over and over again in a shell.

    Now, to rename the define F1OO to BAR1, F200 to BAR2 in all .c, .h and .f files, I run:
    find . -name '*.[chf]' | xargs perl -pie 's/F(\d)OO/BAR$1/'

    AND THAT IS IT ! If your IDE doesn't have a button that says ``replace text matching some pattern with another pattern, in all files matching some pattern'', then *you* will have to do your repetitive work clicking buttons whil I have moved on to the next problem a long while ago.

    Sure, you need to grasp regular expressions. But if you want to get real work done in any environment (now that even VS is catching on), you might as well do that anyway. And then you need to grasp pipes. Well, start by thinking of it as, say, a pipe.

    Not meaning to be sarchastical (if I could only spell that), but I think most of the arguments in this discussion are based on people seeing the problem from some very narrow viewpoint. I may well be doing the same, but for now I'm convinced that I'm not, and looking forward to being proved wrong.

  9. Re:+ GCC????? That would _kick_ass_ by Pinball+Wizard · · Score: 2

    Have you tried KDevelop? It's a little basic still, but it organizes your files, does your makefiles for you, and color-codes your code. Its designed to work with gcc/g++. It also supports qt, so you have cross-platform support for GUI's. Runs under KDE or Gnome.

    --

    No, Thursday's out. How about never - is never good for you?

  10. MS and ActiveState doing the same with Windows by Pinball+Wizard · · Score: 2

    Visual Perl and Visual Python will be part of Visual Studio 7. Interesting because development tools are one of the good things MS makes. It would be interesting to see the color coding, drop-down object members, tree views of classes and functions, online help, and debugging applied to Perl. I wonder who will do the better job.

    --

    No, Thursday's out. How about never - is never good for you?

  11. Re:IDE by anthonyclark · · Score: 2

    Try Visual Slickedit. It has a built in macro language (SlickC) and support for loads of languages. Yes, it's not Free software, but I think £200 is about right for a good IDE. It's the only IDE I know of that correctly syntax highlights languages inside HTML.

    I like IDEs because they are a labour-saving device. How many ppl here use a machine to wash your clothes? (no, Mum does not count ;-) I don't want to have to update a make file because I changed 2 dozen files out of 2 thousand. I don't want to have remember which files are checked in and out, that information should be visible to me; I want to concentrate on coding.

    Yes, there is the argument that hand crafted beats machine tooled, especially in software, but I don't want to spend time updating or fixing builds and headers when I don't have to.

    --
    ----- Documentation is worth it just to be able to answer all your mail with 'RTFM' - Alan Cox.
  12. Client side Perl? by Moe+Yerca · · Score: 2
    Unless someone were to develop some sort of security system for Perl (I'm not an expert, there may already be one) similar to the Java sandbox, client side perl would be worse than Active X. Given the choice between using Perl to parse /etc/password and using VB to access Windows security info, I'd say the Perl is easier!

    Before you flame me, let me state that I am a certified idiot.

    1. Re:Client side Perl? by orabidoo · · Score: 2

      "client-side" perl doesn't mean that it has to be executing perl code downloaded from random webpages. it means that you can write a *local* app, in perl or python, using the mozilla framework. the perl/python/javascript code controls what the menus do, provide all the actual application interface. the app itself doesn't even need to be a webbrowser!

    2. Re:Client side Perl? by PollMastah · · Score: 2

      The Poll Mastah answers in the form of a Poll:

      What should you answer when someone asks you about Perl security?

      1. Use the Safe module
      2. Enable taint-checking mode (perl -T)
      3. Go and RTFM (sorry, no offense intended, this is just the obligatory Standard Slashdot Response)
      4. All of the above.
      --

      Poll Mastah

  13. Smart environments are only smart when up-to-date by dingbat_hp · · Score: 2

    Personally, I like the ease of use of Visual Studio

    I used to like Visual Studio too. I work in the suit-based Microsoft world, so it's the best editor I have any reasonable hope of getting on-site.

    The downside of "smart" environments is when they get out of date. If the "intelligence" it knows about HTML turns out to no longer be true, then it becomes counter-productive. As an example, I no longer write HTML, but always XHTML. The InterDev HTML editor fights you all the way with that ! It doesn't understand closing the tag on an empty element, and it doesn't know about quoting attributes. If you insert an without the size, then when you next look at the source InterDev will have gone in there and mangled it, "helpfully" putting width and height attributes onto it. Unfortunately:
    <img src="foo.jpg" / WIDTH=120 HEIGHT=240>
    isn't even valid HTML (the / that ought to stay at the end), let alone XHTML.

  14. Re:IDE by Zagadka · · Score: 2

    You must be a college student or probably just learned how to program. An IDE is a tool, that may simplify certain tasks in certain environments.

    That's a pretty inflamatory remark. I'm not a college student, and I've been progrmming for over 15 years, yet I tend to agree with the original poster. At every company I've worked at, almost no-one used IDE's because most state of the art IDE's suck. Virtully all existing IDE's are a crappy note-pad like editor with a "compile" button, a cheesy GUI builder, and a lame excuse for project management.

    If the question is "Do you consider an IDE useful?", the answer is definitely yes. All it takes is trying to manage a project with 20 - 50 files each with a 1000 or more lines of code to quickly turn one against bare bones editors and towards IDEs.

    Explain how increasing the number of files makes an IDE more useful? The project management features of most IDEs are a joke. The project I'm working on has over 6000 source files. We don't use an IDE. We use a revision control system for managing our files, and tools like ctags and cscope for finding things. How would an IDE help us? Oh, and did I mention that our source files are in at least 6 different languages?

    Don't get me wrong, I have nothing against IDE's per se. It's just that every IDE I've ever seen has had a bunch of annoying problems. They tend to be difficult or impossible to extend, they don't let you use your favorite editor, they're not cross-platform, and they're usually tied to a particular language. The vast vajority of GUI editors also suck big time, because almost all of them use coordinate placement of components (instead of proper geometry/layout management).

    An IDE is a tool. But trying to build real software with today's IDE's is like trying to build a house with tools like these. If a better IDE comes along, I might start using it. But today I'll stick with bash and VIM as my development environment.

  15. Re:About Komodo by Money__ · · Score: 2

    Yeah, I know the post is pretty lame, but it was only moderated an aditional +1 above my current +2 posting bonus.
    ___

  16. Re:Client-side Perl? by Eck · · Score: 2
    What, isn't Safe Perl done yet? There was a lot of (obviously pretty localized) noise about how much better Perl would be than Java or even (or especially?) JavaScript as the extension language for web clients. Ah, it doesn't look like Safe Perl got past the proposal stage back in 1995. Then again, "man Safe" gets me documentation for it. Time for a visit to CPAN!

    Safe TCL was actually discussed as a possible extension language for e-mail, with prototypes done in Metamail.

    A lot of people have talked about Java's "sandbox" security as being pretty feeble. A language designed from the start to be "Safe" may be able to provide more powerful constructs with fewer vulnerabilities.

  17. Re:IDE by Shaheen · · Score: 4

    I definitely think someone should learn a language in the context of a text / CLI environment. But, if you look at the size of projects today, it's pretty insane to do everything that way. Once you've learned a language (or more importantly, "programming"), I find it an important step to move to an IDE that is usable and helpful.

    Personally, I like the ease of use of Visual Studio (note Visual Studio - *not* Visual Basic).

    Basically, let's say you want to add a function to a class. Well, right click the class' name, click "Add Function" and all you have to do is type in the return type and name of the function (and its privacy class if you like). Done. It even adds the correct include statement to the header file if, say, an argument in your function is the type of a class that isn't defined in your scope.

    I like that. I also like the fact that, while typing, Visual Studio will display a tooltip that highlights the arguments of a function, so I know exactly how many arguments there are, of which type, and even overloaded functions are handled fine.

    I most definitely like the debugger. It's *MUCH* better than:


    gdb stuff
    break ...
    run
    * break hit
    next

    list
    next


    and crap like that.

    People say that it's not real programming. Well guess what, IDEs are tools. They help you get the job done. Dijkstra's algorithm doesn't change whether you're using an IDE or not. IDEs, in my opinion, are glorified text editors (expensive ones too...) which do the grunt work for you.

    I love my IDE, and until *nix has something like it, I seriously doubt I'll be doing heavy development for the platforms.

    --
    You should never take life too seriously - You'll never get out of it alive.
  18. Re:Who's side are they on? by Captain+Teflon · · Score: 3

    ActiveState got into a business relationship with Microsoft about a year(?) ago. Forgive me if I err in some details, but AS got some money, and MS got better support for Perl, which apparently is used quite extensively within MS.

    ActiveState also apparently benefit from MS knowledge, specifically at the time producing a version of fork() which would work on Perl for Win32.

    I've used the Win32 version of ActivePerl extensively. It's a GOOD product, more than making up for the lack of decent command scripting tools in base NT. The only real deficiency at the time was the lack of multiprocessing or thread support, which the latest version (with fork()) has recently implemented.

    You can get Python, Zope, Java for Windows. Free. Perl for Win32 has been around for a while, ActiveState just took it to a new level of professionalism. Even Apache has a Windows offering, which is an excellent and far less clunky replacement for PWS.

    Some of us need to use Win32 at work. Some of us, shock horror, may even like some aspects of it.

    I can't see ActiveState coercing Unix Perl users to go over to the enemy. Rather I think it may help give Win32 programmers an insight into Unix-based tools and maybe get them to check out this Linux stuff.

    Zealotry and anti_MS paranoia does get really boring at times. Guilt-tripping AS because they don't share your paranoia about MS is in my opinion a sign of immaturity.

    --
    Eagles may soar, but weasels don't get sucked into jet engines.
  19. Re:Client side Python in Mozilla would be a Nirvan by King+Babar · · Score: 2
    Actually the original poster was wrong. Client-side scripting, including DOM access, IS one of the goals of this project; you can read about it in netscape.public.mozilla.xpcom.

    Thanks for the tip; the official press release was far from clear on this point. :-)

    Basically Activestate are going to go through the code and rip out all the Javascript-specific assumptions. It's going to rock!

    I wish them luck. I guess one complicating factor here, though, might be the fact that there is a lot of DOM stuff in particular where the Javascript interface is essentially the de facto one (even if the W3C admits the possibility of other scripting language bindings). Which will make this all very interesting come upgrade time...

    --

    Babar

  20. Re:IDE by Ed+Avis · · Score: 2

    TUIPeer is a text-mode look-and-feel for the Java AWT. Would it be possible to do the same thing for Mozilla? If that happened then Mozilla and all apps based on its widget set would be runnable over telnet or in an xterm. It might give the Lynx users something to worry about :-)

    --
    -- Ed Avis ed@membled.com
  21. The beauty.. by angelo · · Score: 2

    And thus is the beauty of open source!

    Certainly, you can use IE5 to develop full apps, but compared to the fully-documented, full-source-code mozilla, designing for IE5 becomes inordinately difficult and expensive, relitively speaking. The hooks to NS6 are both in modular format (real re-use, not just re-use the renderer like IE5) and through the XUL engine (who's your gatekeeper?) which makes the platform very accessable. I really want to see this IDE in action too! I would love a perl ide, as I wasted a lot of resources on my concentric site because I called a sub-shell, and it bonked me on the head for 256 user seconds each time! It would be nice to profile things before they go into production. Then again, I should have read the vde manual online at cnchost.com, but I didn't. This project would likely have saved me a lot of time!

  22. client side perl? by kevin+lyda · · Score: 2

    gee, that's old. i tried it on netscape (3.x?) back in 1996 or 1997 iirc. i downloaded it recently but it seems to annoy the hell out of x and netscape so i dropped it.

    perlplus i think it's called.

    --
    US Citizen living abroad? Register to vote!
  23. Re:Client side Python in Mozilla would be a Nirvan by AMK · · Score: 2

    I don't think client-side scripting is the goal here; instead, they're more likely to work on making it possible to write XPCOM components in Python and Perl. Client-side is apparently a problem because there are various sections of code in Mozilla that are really JavaScript-specific. It's possible to fix this, but it's too big a job to do before Mozilla 1.0. Instead, you could prototype an XPCOM component in Python, get the interface right, and then translate the code to C++ once you're convinced the idea is practical, the interface is correct, and can deal with the slower development speed of c++. For an IDE, you'd probably never translate to C++. For example, the XML-RPC component that just went into Mozilla isn't accessible from JavaScript in a Web page at all, only to chrome and to other components, which are already sitting on your disk.

  24. the dumbing-down of programming by mattdm · · Score: 2
    That's one way of looking at things, and it's obviously very popular -- but there is a price to pay. I highly recommend reading this excellent essay at Salon.com:

    The dumbing-down of programming.

    --

  25. Re:IDE by ucblockhead · · Score: 2

    No offense, but it is hard to beat "find definition" for speed.

    Certainly easier than trying to figure out which of the forty instances of the symbol you just grepped for is the definition. Especially if the code was written by an #ifdef crazy programmer.

    --
    The cake is a pie
  26. RHIDE: free IDE for GCC by yerricde · · Score: 2

    IDEs, in my opinion, are glorified text editors (expensive ones too...) which do the grunt work for you. I love my IDE, and until *nix has something like it, I seriously doubt I'll be doing heavy development for the platforms.

    RHIDE is a free IDE by Robert Hoehne and Salvador Eduardo Tropea. It runs on DOS and Linux and looks just like Borland's old DOS IDE. It's a very good editor with project management and a frontend to GCC.

    But are simple makefiles really that hard?

    --
    Will I retire or break 10K?
  27. Re:IDE by ucblockhead · · Score: 2

    Damn /. doesn't know what "plain old text" means. That should be [right-click]"find definition".

    --
    The cake is a pie
  28. And here's how to make it happen by yerricde · · Score: 2

    we can set up emacs to call make when we press F9

    There should be plenty of opportunity to come up with new small utilities and improvements to the window managers, to the build tools, to the editors, and to things we haven't even thought of yet.

    If Emacs is to become an IDE, someone should write an interactive graphical editor for .emacs preference files. Newbies often have very serious problems setting them up. Need an example to steal? Look at Mac OS 10 to see how easy Eunuchs system administration can get.

    --
    Will I retire or break 10K?
  29. You can't do "Intellisense" in EMACS by Dacta · · Score: 2

    At least, I've never seen it.

    It is the single most useful feature I've used in an IDE - it speeds up typing and stops you having to look for documentation on the exact method names.

    I use the Borland eqivalent feature in Delphi, and I can't live without it. Now, even when I'm typing in a work processor I find myself typing for any word longer than about four letters.

    Breakpoints and intergrated debugging are wonderful things, too, but like you said, EMACS does them fine.

  30. IDE by Gurlia · · Score: 4

    OK, this is perhaps slightly off-topic... but I'm just curious, what percentage of slashdotters actually find an IDE useful?

    Although I've nothing against IDE's, I personally prefer a plain text-editor and the command-line compiler tools. I just wonder who else is like me and dislikes IDE's. :-)

    One reason I stay away from IDE's is because it somewhat locks you into a certain interface that you get accustomed to when programming in that language (or environment, whatever). I find it more useful to learn how to use the bare-bones text-editor / CLI interface first, to focus on learning the language itself rather than the IDE's interface. After I learned the language, then I find my learning more easily applied to any development environment -- IDE or otherwise. If I had started out with the IDE, I find myself lost when placed in a situation where only command-line tools are available, and need to spend a lot of time learning the "real thing". It's so much better to learn it the hard way first, then your skills are more marketable/adaptable.


    ---
    --
    mikre he sophia he tou Mikrosophou.
    1. Re:IDE by Alan+Shutko · · Score: 2

      You don't need an IDE for that. ctags and etags have been around for years.

    2. Re:IDE by SimonK · · Score: 2

      I've heard this before, but ctags can't even distinguish between a function's definition and its caller, let alone complicated things like what class it's in.

      I'm no big fan of the current notepad-with-a-compile-button species of IDEs, but this is, I think the biggest weakness of plain-old-text programming.

    3. Re:IDE by jbarnett · · Score: 2


      From my personal expeirnce, most IDE that I have used (on any platform) kinda blow. Every IDE I have used up to this point REQUIRED you to use the mouse. Which is really annonying if you right in middle of a peice of code.

      With [insert_favorite_text_edit] (mine is vi) you bang out a couple keystrokes and you can quickly do about anything from compling it, to running it, etc, etc without leaving the keyboard.

      It has became like second nature or a habit

      esc:w:!./program_name

      when writting and debugging perl scripts, takes 1 second, 2 at most. Most IDE (haven't used many for perl) take 2-10 mouse clicks to compile and run the program, takes 5 to 20 seconds at most.

      Personally I just find IDE uncomfortable compared to vi, virtual consoles and bash

      Hell most of the type I have a virual console open with bash or tcsh as the shell and to say compile or run the program I could just switch to the console and press the up key and enter and get a full screen output, not one of those tiny little windows

      Ctrl+Alt+F2 [up] [enter]

      Just habit I guess

      Plus awhere I am at, the development envoirment doesn't change, wheather it be Linux, OpenBSD, Solaris, etc. etc they all got vi and the say GNU goodies everyone has come to love (Perl, GCC, Python)

      --

      "`Ford, you're turning into a penguin. Stop it.'" -THHGTTG
    4. Re:IDE by ucblockhead · · Score: 2

      I love VIM. I have it installed on my Windows box. I learned to program C using vi and tutored other people in vi. I even wrote a vi-emulation mode for brief.

      But there is a hell of a lot an ide will do for you beyond a compile button. Visual C++ will automatically find where a variable is defined. it will allow me to add files to a project with a mouse click instead of a makefile edit. It will tell me what modules call the symbol I've highlited. It will show me the header comment attached to the function call I've highlited. That's just a few things. IDEs can be incredibly useful if you know how to use them.

      --
      The cake is a pie
    5. Re:IDE by Stiletto · · Score: 2

      I can't see why anyone would need more than a few Xterms running vi, gdb, and the standard unix tools (grep, awk, sed, etc.)

      I've not yet seen an IDE as scriptable as bash.

      I've never seen an editor that lets you accomplish programming-related tasks than vi, although emacs is close and I admire many of its features.

      I must admit, however, I am currently being swayed down the dark path of some of the nicer GUI debuggers out there...

    6. Re:IDE by Carnage4Life · · Score: 3

      You must be a college student or probably just learned how to program. An IDE is a tool, that may simplify certain tasks in certain environments.
      You contradict yourself by asking two contradictory questions. If the question is "Do you consider an IDE useful?", the answer is definitely yes. All it takes is trying to manage a project with 20 - 50 files each with a 1000 or more lines of code to quickly turn one against bare bones editors and towards IDEs. Now if you are asking which is better to learn a language with then the answer definitely should be a bare bones editor so that certain quirks of the IDE do not seep into one's programming style. Novice programmers are fond of using IDEs as a crutch and more than once I've seen kids crash and burn when removed from the Visual Studio world and transplanted into a Unix environment. I hope this answers your question. Of course questions like yours ignore the fact that a programming language is merely a tool used to perform a task and not a religion or esoteric art to be mastered in all its minutae. Frankly anything that makes you more productive gets an A in my book.

      Now so as not to be marked offtopic by some anal retentive moderator here are my comments about the article, clientside perl will be welcome addition to the scripting arena, it is really cool that Mozilla's original plan to be more than a browser and instead to be an engine/building block component similar to MSFTs COM components is working. Go Mozilla!!!

  31. About Komodo by Money__ · · Score: 3

    From: http://Activ eState.com/Corporate/Media_Center/News/Press959150 636.html "We view Mozilla as a very exciting platform as it offers an open, modern component framework for cross-platform application development," stated Dr. David Ascher, Senior Developer and Mozilla Product Leader, ActiveState. "Our contributions to the Mozilla open source effort will start with adding Python and Perl bindings to XPCOM, Mozilla's component architecture. This change will open the Mozilla architecture and eventually make it available to Perl and Python programmers."
    ___

  32. Client-side Perl? by Imperator · · Score: 4

    As much as I love the idea of , I'm not sure Perl has any framework for security. (Taint-mode is only useful when the script is trusted but the input is not.) Would this require a whole new security model to be grafted onto Perl?

    --

    Gates' Law: Every 18 months, the speed of software halves.
  33. Penguin Sandbox/Signing system by ninjaz · · Score: 4
    That's what the perl module Penguin does. You can find it on any CPAN mirror in the modules/by-module/Penguin directory. Eg., at ftp.freesoftwar e.com in the /pub/perl/CPAN/modules/by-module/Penguin/ directory. Here's a snippet of the FAQ in its tarball explaning how it works:
    'Saaaay, what _is_ the design of Penguin?'

    Glad you asked.

    Consider two machines, foo and bar. A user on foo (or perhaps a program on foo) wishes to execute a program on machine bar. However, imagine that the people running bar don't want just anyone running code on their machine for security reasons. This is the normal case on the Internet, and one which the World Wide Web attempts to emulate with HTTP and CGI.

    Normally, there is no well-known channel for foo to transmit code to bar. Further, there is no provision for the code to undergo verification after transmission. Too, there is no well-defined way for bar to ensure that foo's code does not attempt to perform insecure or damaging operations.

    Penguin attempts to solve these issues while making sure the code language maintains some acceptable degree of sufficiency and power. Using Penguin, the user/program on foo 'digitally signs' the code that's earmarked for delivery to bar. The signature encodes the code in such a way that it is impossible to alter the code or deny that the signer signed it.

    The code is then wrapped up into a packet and transmitted through a 'channel' to a Penguin process running on machine bar. The channel's protocol layer is abstracted away enough that it becomes unimportant; Penguin code can just as easily be delivered through SMTP or AOL Mail as through TCP/IP, DECNet, AppleTalk, whatever.

    The Penguin process on bar unwraps the packet, which contains further verification and checksum information, and then 'digitally unsigns' the code, a process which provides the code in 'clear' form while telling the receiver who digitally signed it.

    The receiver then cross-references the signer's identity with a list of rights that the receiver associates with the signer, reverting to a set of default rights if the signer is unknown or unlisted.

    A safe compartment is then created, populated with the functions allowed to the signer, and told to limit the operations it can perform to only those permitted to the signer.

    The code is then compiled within that safe compartment. If it attempts to do something which the signer is not allowed to do, or if it attempts to call a function not permitted to the signer, the compartment immediately traps the operation and throws the code away before it can execute. If the code uses no unsafe or illegal operations, then it executes and produces a result.

    The code executing side then becomes the master in the transaction, and can send code to the original sender, send the return value back in a data packet, and so forth. The process repeats as necessary until both parties are done; the channel then closes, and the Penguin transaction is complete. The basic sentiment behind the idea of 'identity' being correlated to 'rights' in the receiver is that in signing the code, the signer commits her identity and her reputation on the correct operation of the code. 'highly trustable' signers (as one might imagine Larry Wall, Randal Schwartz, and Tom Christiansen to be) might be assigned very high levels of trust and equivalent degrees of 'rights', so that programs they sign can perform very complex and interesting operations on your computer. By the same token, paranoid sites or those wishing isolation could assign zero rights to everyone except for a select (perhaps internal) few.

    Part of the 'rights' given to signers include possibly specialized functions that encapsulate the functionality of extremely dangerous operations. For instance, a store opening up on the Internet might put up a Penguin server which put functions called 'list_items' and 'buy_item()' into the limited compartments all users get. 'list_items' might open up a file on the store's machine, read the contents, and spit them out -- an operation which, if allowed in the general case, would clearly breach security. However, by creating a specialized function, the security concern is removed, and by letting potential customers know of the function, the power and ease of use are kept high.

    Niggling but important technical issues currently being wrestled with include the way that foreign functions are registered into the namespace, the construction of a foreign function framework so that the names and function of the functions are well-known, and a superior-than-current 'digital signature' method.

  34. Never thought i'd see this by pneuma_66 · · Score: 3

    On activestate's homepage there is a link to a press release about Visual Perl and Visual Pyhon for MS Visual Studio 7.0

    cristiana

  35. Re:Client side Python in Mozilla would be a Nirvan by King+Babar · · Score: 2
    I don't think client-side scripting is the goal here; instead, they're more likely to work on making it possible to write XPCOM components in Python and Perl. Client-side is apparently a problem because there are various sections of code in Mozilla that are really JavaScript-specific. It's possible to fix this, but it's too big a job to do before Mozilla 1.0.

    I've heard about the JavaScript-specificness before. So help me, this has to be the silliest limitation in the whole Mozilla project. I mean, it's not as if they didn't bother abstracting away from the {user interface, rendering engine, networking code, fill-in-the-blank}. But Ecmascript was holy? It's a bit depressing when Microsoft, who probably had every reason to push VBscript as hard as possible, actually offer more choices for client-side scripting (by a lot) than Netscape/Mozilla/anything else.

    That said, it will be pretty awesome to write XPCom stuff in the language of your choice. And the ActiveState people have a pretty good record for providing what they say they will.

    --

    Babar

  36. Client side perl? Got it by rjamestaylor · · Score: 5
    Client-side perl has been available for a long time. But it's only available using a certain browser:

    The folks at ActiveState have also developed something they call PerlScript, which is an ActiveX scripting engine for Perl. This means you can use Perl as your scripting language with any application on Windows that supports ActiveX scripting, such as Internet Explorer, Active Server Pages files, and the Windows Scripting Host. Not too shabby, eh?
    (From http://msdn.microsoft.com/workshop/essentials/webm en/webmen1103.asp)

    Yep. That's right. Client-side perl using Internet Explorer. Since 1997.

    --
    -- @rjamestaylor on Ello
  37. Templets. by Forge · · Score: 4

    What Open Source IDE's, Office Suites and other such things really need are Templets. And yes a proper GUI IDE has more in common with an Office suite than it dose with a Compiler + Editor + Debugger. Both in terms of functionality, design and target user.

    What do I mean by Templets ? A typical commercial Office suite comes with literally hundreds of half finished documents and a Typical Commercial IDE has a pile of half finished programs.

    Just start up the app, respond to a few questions for general things and you have a working app that may do part or even all of what you want ( if you have simple needs ). A really cool interface is nice and good online docs are extremely helpful but the REAL killer feature is the document files included in the distribution.

    What I suggest is that the OSS IDEs designed for beginners ( This, GIDE and KDEvelop come to mind ) should have a well documented and simple method for creating wizards and templets. Then novices should be invited to work on these with the core developers only providing QA and guidance ( You don't want the IRC wizard to generate a client that must be setuid=root do you ? :)

    Same goes for the Office suites, except that we should bundle a ton of clipart. Sure it means that latter on when you install Mandrake or Debian ( Both already 2 CDs each ) you have a 3rd CD called "templets and clipart" with nothing but royalty free graphics and sound plus BSD licensed sample source code. The apps will then know how to find it ( don't hardcode /mnt/cdrom either :).

    BTW : Did anyone else notice that what separates the downloadeble WordPerfect 8 for Linux and the WP8 Office for Windows ( Motherboard driver disk version ) from the Shrink-wrapped full price versions is just the printed manuals, Templets, clipart and founts ?

    --
    --= Isn't it surprising how badly I spell ?
  38. IDEs for OOP by JohnZed · · Score: 3

    Ok, so I do a lot of C/Perl programming in Linux, but I also do plenty of C++ and Java work too. For non-OOP languages, all I really need is a good way to jump to the definition or implementation of a particular function or structure. With some hassles, ctags/etags + vi or emacs can pull this off, and they're quite passable.
    But with Java and C++, the advantages of an IDE become huge. Class browsers and Intellisense (also called autocompletion) actually make it intuitive to work with hundreds or thousands of different classes at one time. So sue me if I can't remember the order of the parameters that go into some obscure method on a class I hardly ever use. Intellisense makes that a total non-issue.
    Also, many people who tried IDEs years ago, but haven't looked at the newest crop, should really take another shot. I mean, GUI-builders have become vastly more sophisticated in the past years, and wizards have grown from relatively-useless little aids to incredibly poerful tools. Think about how many programming tasks are really "boilerplate". Getting rid of repetitive tasks is NOT dumbing-down of programming. Really, it's just the opposite. Programmers should only have to spend their time THINKING. Not writing stupid makefiles. Not re-typing simple code that hundreds of other people have already written. And we certainly shouldn't have to spend our time switching back and forth between DDD, emacs, and cscope.