Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Programming IT Technology

Komodo Beta Release 45

arkman writes: "In this morning's e-mail ActiveState has announced the availability of the beta release of the Komodo Integrated Development environment on Windows and the technology preview of Komodo for Linux. The relevant information can be viewed at their Web site. Komodo is ActiveState's cross-platform IDE, and it supports Perl, Python and Java Script." Looks very promising; I hope it doesn't suffer from the problems that certain other Mozilla-based products do.
This discussion has been archived. No new comments can be posted.

Komodo Beta Release

Comments Filter:
  • ActivePerl and ActivePython are not GPLed. Komodo is not GPLed either. The final license for Komodo hasn't been decided.

    Paul Prescod
    ActiveState
  • I really wish text editors wouldn't do that. I wish they'd leave the tab sizes at 8 and not allow you to mess with them. If you want indenting that is less than 8 - use something other than hitting tab. (For example, in vi use the ctrl-T for indent and ctrl-D for outdent (in insert mode) - these will go by your shiftwidth size, which is settable seperately from your tabstop size.) The reason I say changing tab sizes is evil is that it makes it so your code only looks right in THAT editor and nowhere else. It will look wrong on a printout, it will wrong in someone else's editor. If you ever plan to have somoene else be able to edit your code ever, don't operate under altered tabstop sizes. If two people using the code have different tabstop settings, then some parts of the code will be written with different settings than other parts of the code, and no matter which setting you pick, some parts of the code will not line up right.)

    I worked at a place where people were doing this and it was hell to try to follow the improperly indented code (especially when someone with a tabstop of 4 would go in and try to 'fix' someone else's indenting who had been using 8, because on thier screen it looked wrong (even though it was using the more common standard).

  • Doesn't look cross-platform. It requires an x86 chip. If it were really X-Platform, it would also run on Linux (at least) on PPC, and better yet, ActiveState would use the mac ports of python and perl and the mac mozilla engine to really fulfill the x-platform promise of the the three foundations of the project.

    All the pieces are there, ActiveState. Why don't you go for the big 3?
  • by ink ( 4325 )
    This isn't JUST for python...it's for perl and javascript too.

    Here's what XEmacs supports (with colour syntax highlighting, compilation, debugging, code indentation, etc.):

    • ada-mode
    • asm-mode
    • auto-autoloads
    • autoconf-mode
    • awk-mode
    • cl-indent
    • cperl-mode
    • custom-load
    • cvs
    • eiffel3
    • f90
    • fortran-misc
    • fortran
    • icon
    • java
    • ksh-mode
    • m4-mode
    • make-mode
    • modula2
    • pascal
    • perl-mode
    • postscript
    • prolog
    • python-mode
    • rexx-mode
    • sh
    • simula
    • sql
    • tcl
    • teco
    • verilog-mode
    • vrml-mode
    And that's just a partial list of what comes installed with XEmacs. You can easily triple that list by downloading your own elisp packages and installing them.

    The wheel is turning but the hamster is dead.

  • I've discussed this with Dick Hardt - we need to work through the process by which third parties can contribute to the code base, but he is very interested.
  • you know you can run gdb in an emacs window and the code window will indicate which line of code you are stepping through.

    But I'm guessing you don't have much experience with these tools.

  • Emacs is not cross-platform. Emacs IS a platform.
  • You mean other than Mozilla itself, right?

    (jfb)
  • The problem with products like Komodo, WingIDE [archaeopteryx.com] and PythonWorks [pythonware.com] is that they offer little more features than Python's own IDLE and Pythonwin (win32). In their latest incarnation the latter also offer syntax colouring, primitive autocompletion, reasonable debugging; and some other gloss associated with modern IDE's. Not advanced, but good enough for a quick hack.

    A combination of any good editor and a form-painter for a good multi-platform "GUI Library" like wxWindows or QT, easily defeats the aforementioned commercial products on a feature by feature basis. PythonWorks does incorporate a lay-out editor for tkinter, but it's limited and tkinter is hardly as slick as QT.

    What Python needs IMHO is a tool like Delphi or JBuilder. Python is an ideal language for a rapid prototyping tool and fast enough for most applications. Boa Constructor [sourceforge.net] is a nice attempt at creating such an IDE, but currently far too unstable for actual use.

    It would be nice to have a Python plug-in for Kylix...

  • Please explain to me what you think an IDE is.

    --
  • I'm not sure if this'll lure me away from *cough*emacs*cough* for coding perl, but there's a few features I'm looking forward to checking out.

    Primary among them the regex debugger. There are too many days when all I do is write regular expressions, and trying to find that one misplaced slash after staring at them for ten hours can be a real bitch. Anything that makes that easier will make me happy.

    I'm also looking forward to javascript support in it. Having one place to code, test and debug that nonsense will be a godsend. Just being able to examine variables with something besides alert() will wonderful. Debugging javascript gives me the shakes.

    On a somewhat related note, does anyone know if cperl-mode in emacs has syntax folding? I'd swear I'd heard something about it somewhere, but if it's there, I haven't found it.

  • Ok, I know no feeding.
    Komodo is a IDE, not a file manager. IDE == Integrated Development Environment if you are unaware.
    You may now resume your disorder.
  • I also like to set softtabstop to four. As explained in the vim docs:
    Number of spaces that a [Tab] while performing editing operations, like inserting a [Tab] or using [BS]. It "feels" like [Tab]s are being inserted, while in fact a mixture of spaces and tabs are being used.

    I've used this for python editing in vim, and have never had trouble with the results.
  • Was there a point to that post? This isn't JUST for python...it's for perl and javascript too.
  • OK, I'll let you know: he's referring to Netscape 6. The problems he's referring to are primarily bloat and lack of speed.

    And I've installed Komodo (on Windows) and, though I was looking forward to it, I'm disappointed. It does indeed suffer from the Mozilla problems: it's slow and clunky. Make that very, very slow, and very painfully clunky. Some of its features are quite nice, namely the real-time syntax checks and the easy-to-use debugger. Other things seem missing: extremely little customisation possible, no ability to run your own code while paused at a breakpoint, no integrated language reference, etc.

    But more than anything else, the interface just feels slow. That, unfortunately, seems to be affecting all Mozilla products. I do a lot of Perl programming, and I'd love an IDE, but for now I'm going to have to stick with my text editor. (Luckily, ActiveState is developing a Perl plugin for the next version of msdev which, no matter what you think of Microsoft, is the model upon which IDEs are based.)
  • Can you download the Komodo source? This would be useful for many of us that don't use Windows or x86 Linux if we can download the source and recompile it for other platforms, like Solaris or PPC Linux.
  • As our favourite Guido explains it in the Python style guide:
    A tab is 8 spaces. A level of indentation is 4. Use tabs and replace with spaces for the "odd levels of indentation".
    Most programming text editors worth their salt should allow you to specify a tab stop as 8 spaces wide and a level of identation as 4 spaces. At least in an ideal world.

    In Python these guidelines ofcourse are important in more ways than just for looks since they actually tell how your code wil be interpreted!=)

    -

  • You looked at the screenshots, no less? Whoa, I can see where you're coming from. I mean, the looks of some screenshots are really important, especially in determining if something is "going anywhere" or not. Qualifies you to disqualify their hard work for certain. Don't worry, some day you'll pick up a shred of sense. I'm sure:/

    -

  • Comment removed based on user account deletion
  • So is emacs :)


    He who knows not, and knows he knows not is a wise man
  • I'd never even heard of ActiveState until last night when I went out drinking with "some guy" from there. :-) Now I show up on site where I'm contracting with too little sleep from closing down some bar last night and what should to my blurry eyes appear but the most recent story on Slashdot on said company. This ironic like an Alanis song not like a Shakespearean Sonet or even a Spencerean Sonet. One day I'll learn to spell but not two day. :-) Muskie
  • Since activeperl and activepython are gnu, I assume that komodo is, too.

    :)
  • Well said (assuming you're answering the first sentence in the post above). This also drives me up the wall when people use different tabstop sizes (especially after you've shown them how to use ^T and ^D).

    To whoever moderated this as a troll, please look up how ^T and ^D work. Oh go on then, since I'm here...

    Set shiftwidth=4 and leave tabstop=8. In insert mode, ^T will now indent with 4-space tabs, ^D will outdent again, and 0^D will take you to the start of the line. Indents will be done with a mixture of spaces 8-character tabs as required. You get to use 4-space indents (or however many you want to use) and files look consistent on printouts and on editors which only support 8-character tabs.

    And Mandrake should be thoroughly ashamed of themselves for setting tabstop to 4 by default - it also mucks up editing some of the standard system config files. I thought they were trying to make Linux easy ?
  • Well, to each his own, but aren't Windows users also the people who dedicate all their screen real estate to a single application?

    I'm very happy with emacs and a terminal window. I've worked with some of the best IDE's of their time, too -- MPW, CodeWarrior and Think C on Macintosh. They were nice. Nowhere near as stable and mature as emacs, bash and make.

    As for debugging, I have become convinced that the best way to find bugs in code is to read it.

    That said, if Komodo helps to increase the attractiveness of Linux as a development platform, that is of course cause for celebration.

  • Hey, check this out! The latest screenshots of vi are online! This sure does look ugly... Wonder if anyone could really use *that*...
  • Sounds like fun...
    Now lemme see..
    16 Megs of RAM for windows.. Check
    16 Megs Of RAM for linux... check.
    64 Megs of RAM For qIII... check
    Spare Ram.... heh.. forgot about that.
    http://www.rammatters.com
    Pretty colors, little information

    "I have not slept a wink"
    William Shakespeare, Cybelime

    Caffine: Thanks to modern medicine, sleep is now an option.

  • by cezarg ( 260800 )
    Is this thing using XUL for its UI? It looks almost like mozilla. If it is then I'm having serious concerns about its performance already.

  • I currently use KDevelop to do my Python and PHP. When I open my source files in other editors, what had appeared as a nicely aligned section of code, will be unaligned. In other editors, such as Interdev, the text always appears as in KDevelop (which is using its own version of KWrite?).

    There seems to be differing standards in editors for displaying tabs and spaces. This is particularly bad when working with Python, because what you thought was a nicely tabbed line of code, is actually a space over line, which results in an error.

    Could someone explain this problem to me?
  • perl, python and javascript are already "cross platform".. i guess these do not need an IDE.
  • I've looked at some of their screen shots, and they pretty much look like an attempt to make Windows (or Linux) look something like a Mac. It's a good start for Windows, but Eazel's Nautilis is a lot better for Linux. It's not going anywhere.
  • It's hard to trust a 100% M$ daughter.
    If you can't find the modules anymore and you are depending on special ports because of CPAN-incompatibility, how a power user can use their product? By paying?
    The Perl port of ActiveState struggled hard with windoze' lack of a standard compiler. All respect to the work of Gurusamy Sarathy, but ActiveState seems to me like a spy baby in the OS war.
    Their artwork in a socialistic realism-style is just another opportunistic lie.
  • The post reccomended that as one of several solutions, "Doofus". It also reccomended a tabsize change. And thanks to whomever called the post a "troll". I brought up a genuine point.
  • As Komodo is mozilla based there has to be a way of making a smaller download available to those with Mozilla already installed on their machines. I understand the reason they're doing it at the moment, both Mozilla and Komodo are at an unfinished state so they want to make sure people are running komodo with a particular build of mozilla so it's easier to find out with the bugs are in komodo or mozilla.

    But hopefully by the final release you'll be able to download a much smaller version that doesn't include to mozilla component so Mozilla users won't needlessly have two copies of moz on their hard drive. The same should apply to all Mozilla based products.

    Also does anyone know why you need IE5 installed to view the release notes in Windows? Is this a requirement of MS's own installer that activestate uses?

    Michael sounds like he's spreading FUD: "Looks very promising; I hope it doesn't suffer from the problems that certain other Mozilla-based products do."

    Can he please name this "certain other product" I'd like to know.
  • by swingkid ( 3585 )
    I already have a cross-platform IDE for python. It's called emacs.
  • iThis is _really_ a cool IDE -- but aside from the 'code folding' feature I can't imagine using the editor.

    You see, I have a VIM problem. I admit that I am addicted to VI key bindings and bcweven^[$though it's a bit difficult to learn you get used to it ^[:?VIM dwdwiVIM Addiciton.^[Ga

    So my question is, when will a decend IDE come out that lets you switch 'modes' between "Normal mode" (ie: windows default), EMACS, and VI style editing. I'm sure someone will figure out a way to embed VIM and EMACS in Komodo eventually, but it sure would be nice right off the bat.^[
    :wq
  • I am sorry, this is no flame, but when I hear a Perl advocate call Python's syntax "picky" I have to smile... you mean keeping your code blocks properly idented is harder than _$->@{}?

    I am willing to wager that you haven't tried Python; I used to make fun of the whitespace thing too before I actually coded in the language. Just find a reasonable size project (a coupla hundred lines of code will do) and try out Python. You will change your mind.

  • It would be great if they added PhP to the list of supported languages :)
  • Just installed Active Python and Komodo. Active Python falls under the "ActiveState Community Licence [activestate.com]". Basically you get the code, and you're allowed to fix bugs, but you can't "fork" the product. You get the source code, but the licence means ActiveState controls the development of the product.

    Komodo had no licence, but the source code was on the site. To install Komodo, you have to agree that you are using a product that is owned by ActiveState - you don't have any ownership of what you just downloaded.

    I'm pretty excited. I've been waiting for a Perl IDE for a long time and I plan on trying both this and the Visual Perl product they are releasing.

    I watch the sea.
    I saw it on TV.

  • Uhm. The first time I tried to program on Linux (in C++, though, I must admit) I was very annoyed by the lack of IDEs the Windows/DOS world had for years. Apparently, the Linux hackers don't really like IDEs. Or, to be exact, they don't really understand the need for them. They (we?) do understand the need for versatile text editors, at least I guess so, because there is something like 10^56 different "programmer's text editors" for Linux. But the editor is but a small part of the IDE.

    The point of an IDE is to bring the holy trinity of programming - coding, compiling and debugging (actually, in my opinion, keyword-sensitive API documentation is also a big part of this, but "trinity" just sounds good) together in one, cohesive tool. That saves lots of time (at least for me and all the people I know). I mean, I don't mind running gcc at a separate window, but a separate debugger? This is incredibly uncomfortable. And there are some other perks, such as easy makefile/project management etc. etc. etc.

    Speaking of editors and IDEs, I guess emacs could be also called an IDE since (at least I guess) it has most or even all these features, but so what? Doesn't it come an all-lisp version of Q3A (I will not be surprised if it does, by the way)? And anyway, any dedicated IDE with a dedicated IDE's interface (Microsoft's old PWB doesn't count) is at least easier to use than anything I've seen on emacs yet (though it could change... have I mentioned Q3A?), but anyway, I digress

    "Perl really doesn't NEED a IDE" - why? I mean, what makes Perl so special? I know it's interpreted, but does it mean it doesn't need debugging? And if it does, wouldn't an instant, in-place debugger be much more comfortable? What feature does it (and C++, for example, doesn't) that makes IDEs totally unnecessary? I really don't know, since I really don't know Perl, but that looks a little odd to me.
  • by Lally Singh ( 3427 ) on Friday December 22, 2000 @06:28AM (#543581) Journal
    Anyone know what the license for this baby is?

    --

  • by nchip ( 28683 ) on Friday December 22, 2000 @09:53AM (#543582) Homepage
    No, it's called vim (ducks)

    Seriously, Both have their uses.

    Syntax highlighting, bracket matching and compiling, function searching - the most typical ide tasks can be done both. now If I just could get autocompletion (intellisense for MS crowd). xslide [mulberrytech.com] already does some autocompletition, so it possible (at least on emacs).
  • by TheTomcat ( 53158 ) on Friday December 22, 2000 @07:02AM (#543583) Homepage
    Sounds a lot like Coldfusion Studio, which I use daily to develop coldfusion, html, javascript, css, perl and php.

    Block folding is GREAT for finding unmatched brackets (or 'where did I forget to close that <TABLE>, Netscape is puking').

    I'm definately going to check this out, though. CF Studio has a few nasty bugs, and isn't cheap.
  • by StandardDeviant ( 122674 ) on Friday December 22, 2000 @12:04PM (#543584) Homepage Journal

    There is a way to mimic this pretty strongly in Vim. Naturally I'm 750 miles from my linux box right now for the holidays or else I'd be more definitive in my answer. :-)

    Essentially, run ctags on your source files. then when you hit CTRL-X (I think) in insert mode, it autocompletes with the first match in a user-defined ordering and set of places to look (tag files for var/func/macro defs, words in /usr/dict/words, etc), then CTRL-N/P move back and forth through the result set. This isn't quite like intellisense, but it's still pretty handy when you have a ton of methods laying about. The vim online help and man page have much more info on this. Of course once you've completed the name of a tag, you may want to jump to it to see the definition. No prob, just hit CTRL-], then CTRL-O iirc to jump back to where you were. Admittedly not really intuitive, but better than LALT-META-CTRL-BKSP-x FooBar to do something in emacs... ;-) What with the fairly simple (10-15) key sequence collection needed to become productive and the bright 8-bitish coloring of the code, my friends and I joke that C programming is becoming more and more like playing an old Nintendo game...


    --
  • by dwcope ( 166781 ) on Friday December 22, 2000 @07:21AM (#543585) Homepage
    I imagine the reason your alignment is thrown off, is because of how different editors handle tab sizes. I think that most editors treat a tab as 8 spaces. However, some programming editors default to a different tab size because 8 spaces is pretty extreme for formatting nested code.

    However, most "good" editors will let you change the tab size to something other than default. Another option would be to use spaces instead of tabs. I actually use VIM, and there is an option to automatically expand your tabs to spaces. That way you don't have to worry about tab sizes if you open the file in another editor.
  • by SydBarrett ( 65592 ) on Friday December 22, 2000 @06:38AM (#543586)
    Perl really doesn't NEED a IDE, but this thingy might make a good editor since I use pico/vi for editing my scripts and most of my bugs are syntax related.

    It has editable syntax coloring and checking, or as they say:

    "...a powerful "Early Warning System" that checks the syntax in Perl and Python code. Syntax errors are immediately flagged, which saves time otherwise wasted compiling. This feature even detects incorrect indentations in Python. "
    "
    Sounds downright usefull for checking the picky syntax of Python. It even has a debugger, which is always nice. It sounds alot like the Visual Studio IDE, which I kind of like despite a few bugs. A friend of mine is learning Perl, and sometimes gets tripped up with unmatched brackets,
    I guess this "block folding" feature may help.

    A future release will have a "Regular Expression Debugger", which would be very nice for Perl, since it's one of the places where new Perl users get stuck at with complex reg-exps. Hell, even Perl experts miss a \s now and then. :)

To be is to program.

Working...