Follow Slashdot stories on Twitter


Forgot your password?
Software Operating Systems Unix Linux

JOE Hits 3.0 519

orasio writes " Joe's Own Editor , a unix editor very much like the old Turbo-Pascal 4 editor, or WordStar, used and enjoyed by us console freaks who still miss the old DOS days, and cannot finish understanding vi's modes, has been revamped, adding syntax highlighting and internationalization support after many years without new features. The Sourceforge project is open for contributors since a year ago, but this is the first major feature improvement, that brings new life to JOE as a neat console-based programmer's editor." Joe is one undervalued program -- less arcane than vi, less cumbersome than emacs.
This discussion has been archived. No new comments can be posted.

JOE Hits 3.0

Comments Filter:
  • by Anonymous Coward on Tuesday April 27, 2004 @06:23AM (#8981738)
    Or something similar. Joe's editor still sucks. I can't believe -- it's 2004 and with NCURSES no one has made a drop-down menu driven editor YET???
  • by cerberusss ( 660701 ) on Tuesday April 27, 2004 @06:25AM (#8981747) Homepage Journal
    Well yeah since it now has Unicode support. Which is quite handy if you need to edit an XML document, HTML or something else with accents.
  • I want semware Qedit (Score:2, Interesting)

    by djplurvert ( 737910 ) on Tuesday April 27, 2004 @06:30AM (#8981775)
    I want Qedit for unix. It's macros were extremely usable on the fly and I've found nothing else that balance of power and features that it had.

    Column copy, split windows, multiple macros that could be quickly defined by a simple to use keystroke recorder. Completely configurable. Oh, and fast and small.

    I've tried most of the unix terminal editors. I end up using either vi or nano.

  • by Bapu ( 26118 ) * on Tuesday April 27, 2004 @06:30AM (#8981777)
    Everyone should use Joe because CTRL-k-d is so much easier and more intuitive than ESC :wq!

    Joe was a nice alternative for DOS refugees when vi was the only other choice, but X-windows based editors make everything nicer...try middle click cut-and-paste for starters.

    Unless we are all sitting at green Wyse 50 terminals, why are we still so married to command line editors? I am guilty of it too. vi is my God.
  • by Anonymous Coward on Tuesday April 27, 2004 @06:31AM (#8981782)
    When I started at the university ten years ago, I was confronted with editors like vi, pico and emacs. Emacs was usually the last choice since the old Sun IPX:es had a hard time coping with ONE operating system. My first confrontation with vi gave me panic and I killed it, only to receive a death notice by mail shortly after. (It took 2 years until I dared starting it again). Joe was one of the few programs I managed to save in (because I used pine, I guess), so I stuck with that.

    Later I had an affair with Jed and found its syntax hiliting to be a bless. And, I could figure out how to get the background black!

    Now, I've grown up and am much to comfortable to develop in anything less than a good IDE.


  • by Scott Robinson ( 108176 ) on Tuesday April 27, 2004 @06:40AM (#8981833) Homepage
    Have you tried using Jed?

    For the record, I'm was leaving Joe *right now* for Jed.

    With version three, I think I'll take another look at my favourite editor.
  • by Andreas(R) ( 448328 ) on Tuesday April 27, 2004 @06:42AM (#8981843) Homepage
    Let me just recap the well known reasons why vim is better then joe:

    vim is upward compatible to vi.
    So if you master vim you can edit with vi. vi is on every unix box, even on the most "naked" ones.
    In addition, vi runs on practically any terminal and any connection, even when logged in from half around the world through several "hops". (I'm typing this on an old Ampex terminal (vt 100 like) via a 9600 Baud connection.)

    # vim works like you think.
    Many commands are "mnemonic". In a recent post, Randy has put it quite nicely:

    As I said earlier, vi works like I think. I think "replace this word with that one;" "delete this line;" "yank this paragraph and put it down there;" "move there and insert a word;" "format this paragraph." Vi provides commands that map to how I think. Some of the time I'm just typing in text without editing it, but normally I'm editing text. I tend to write something, then go back and make it perfect. I prefer to copy something that is already there and then modify it to be what I need. This expresses very well what I believe has been a major design goal of vi!

    # Now for the modal/modeless controversy.
    If you really think about it, it boils down to the following: it's a matter of how you define "modal"/"modeless"; in other words: if vim is modal, so is emacs - if emacs is modeless, so is vim.
    The reason: in emacs you are by default in "insert" mode; you have to type "ctrl-m ..." to issue an editor command; so "ctrl-m" is actually a switch to command mode). In vim, you are by default in command mode; when in insert mode, you type and then some command, and then i to get into insert mode again.
    While programming, you are at least half of the time in command mode (if you are an Emacs user you might not be aware of that because nobody calls it like like that). The difference between Vim and Emacs is that most most Vim commands are mnemonic and need much less modifier keys, such as Ctrl, Alt, etc.

    # I believe that modal editors are more efficient for programming (and similar tasks, like writing latex).
    This is because I find myself much more often editing text which is already there, rather than producing new text which hasn't been there before.
    This goes well with the observation, which someone reported in the comp.editors news group about joint strain. I almost get joint strain myself when I see emacs users holding down the ctrl or alt key all the time with their pinky or thumb ;-) ...

    # I'm not sure what the reason is, but I've never seen emacs users who actually used all those feature which emacs-the-editor offers. (At the office, I'm surrounded by emacs and nedit users ;-) I mean features like marks, tags, jumping up/down paragraph-wise, jumping to the beginning/end of a function, searching identifiers in all include files, etc....
    I suspect, this is because it's simply just too difficult to remember all those ctrl-alt chords. :) [no offense intended!]

    # Speed: CPU-wise, vim is still by far more efficient than joe.
    Try running joe on an SGI Indy! Or on a PC/286!

  • Re:VI is everywhere. (Score:5, Interesting)

    by CoolGopher ( 142933 ) on Tuesday April 27, 2004 @06:43AM (#8981848)
    I know what you mean. When I was dropped into doing system development on a Solaris based product I initially set out with the intention of finally learning emacs.

    Well, long story short, I couldn't the sucker to compile/run/whatever (I've forgotten the details by now), so I decided not to waste any more time and instead improve my vi skills.

    Best decision ever. Easily.
    Now I have an extremely powerful, usable, lightweight editor that is available on every *nix under the Sun (ha ha).

    Not to mention that starting up emacs on my old 386 would not be a pretty sight, considering that just doing "vi /etc/fstab" takes ~8secs before I can start editing...

    This is not to say that Joe is bad/useless. I wouldn't say that, especially since I haven't used it. However, for me, and many others, it's not the most practical choice :)
  • by eclectro ( 227083 ) on Tuesday April 27, 2004 @06:43AM (#8981853)
    I think it is. I never knew about this project until now, and was quite afraid I was going to have to learn a new ide when I wanted to return to programming.

    There are those of us who consider the turbo pascal interface an extension of our fingers, because we used it so heavily back in the day.
  • by SMOC ( 703423 ) on Tuesday April 27, 2004 @07:00AM (#8981918)
    Can it corrupt EOL characters like notepad can on WinXP?

    try it: type a few lines in notepad, and then use Ctrl-Leftarrow to go back to the end of a previous line. start typing again, and presto, you've successfully split the CR from the LF.

  • one word: mcedit (Score:3, Interesting)

    by ironhide ( 803 ) on Tuesday April 27, 2004 @07:03AM (#8981934) Journal
    I use mcedit contained in Midnight Commander [], more nostalgia and userfriendliness than either Joe or Pico. It also has a nice blue color which remind me of the days of dos edit or wp5.1. Screenshot here [].
  • by dargaud ( 518470 ) <(slashdot2) (at) (> on Tuesday April 27, 2004 @07:10AM (#8981973) Homepage
    At a recent job interview I was asked whether I prefer vi or emacs. My answer was none of them. If there's no X then pico/nano is probably enough to get the system up and running. And then I can use nedit in X. Anything else will be missing from the system.

    BTW, nano is the editor of choice in the Gentoo [] setup. Good for them.

    I didn't get the job...

  • Re:VI is everywhere. (Score:5, Interesting)

    by lintux ( 125434 ) <> on Tuesday April 27, 2004 @07:15AM (#8981996) Homepage
    You know, when you know how to use vim, you certainly don't automatically know how to use vi. Just try to edit a file on BSD using the default version of vi.

    - Backspace key won't work correctly when you want to delete text which was there already before you entered insert mode.
    - Forget about the delete key, you'll have to quit insert mode and use x. (And for some reason, when you leave insert mode, the cursor magically moves one position to the left)
    - When you accidentally use your arrow keys at an unexpected moment, your file gets messed up and/or you sometimes automatically leave insert mode.

    And well, I can imagine that it'll be even worse on older machines.
  • by Doooh_head ( 765623 ) on Tuesday April 27, 2004 @07:25AM (#8982043)
    When I switched from the IBM mainframe environment to DOS, I took a DOS port of a mainframe editor with me. We used to use XEdit on the mainframe, but used KEdit on DOS. That was a nice editor...

  • Re:Great news, but.. (Score:5, Interesting)

    by Alan Cox ( 27532 ) on Tuesday April 27, 2004 @07:29AM (#8982067) Homepage
    I for one use joe. It does what I need and it does it fast. More to the point I suspect it uses the same keystrokes I learned back in prehistory (before DOS!) from VDE and Wordstar on CP/M.

    Joe 3 will be most welcome here.
  • Editors (Score:3, Interesting)

    by wpiman ( 739077 ) on Tuesday April 27, 2004 @07:48AM (#8982177)
    What- no wordpad comments?!?!

    Anyone who ever has to work in a cross platform enviroment should at least be able to use vi. This is everywhere.

    Personally, I like it but it took some dragging me across the hot coals by one stubborn instructor in a week long class to get me to adopt it. Once I did, I liked it. Now I use GVIM on the PC and vi on the unix platforms. GVIM on the PC is real nice, it has language support and pull down windows. What I'd like to do is learn how to set up XEMACS to run in VI mode so I can get the best of both words- but I am to busy doing work or reading slashdot to learn.

  • by cheekyboy ( 598084 ) on Tuesday April 27, 2004 @07:50AM (#8982193) Homepage Journal
    Dude, you can download any editor with in 3minutes.

    just ftp/http/wget it from 100000 sources, there are binaries for everything, including dreamcast to your microwave and vacume tubes

    VI is everything, god, talk about lazy.

    Yes, windows is everywhere, but are you using it?

  • by game ( 62990 ) on Tuesday April 27, 2004 @08:25AM (#8982433) Homepage
    When switching to Un*x/Linux some years ago Joe was a life-saver for me, it was simple, a well known spot on an unfamiliar landscape :-). After a few years with most of the unfamiliarity gone I found myself wanting efficiency/performance in my daily programming, so I tried vim. For weeks, I was feeling very satisfied with my ability to do some basic editing (without using cursor keys, of course :-)), then I realized I didn't like it and I've been an emacs user since.

    There is so much to learn, you have to choose wisely. However, if you're serious about programming you will invest much energy over the years in learning an HTML editor, a good C/C++ editor, a docbook editor and perhaps even write your own editors for specific purposes. This realization made me pick kitchen-sink-emacs. But I still do not touch cursor keys.
  • Re:Great news, but.. (Score:2, Interesting)

    by Fortyseven ( 240736 ) on Tuesday April 27, 2004 @08:30AM (#8982485) Homepage Journal
    Don't play down my main editor. Joe got muh back, and now he be better than evah. Unf.

    Seriously, I love this editor. I use it as my main non-coding editor for doing various edits to configs and such. I just know the keystrokes without thinking about it. All the other editors just feel overly complicated to me whenever I try and pick them up. Joe doesn't give me any surprises, and I like that.

    Perhaps if I had my brain wiped and I was to start over again, I'd learn one of the others. But that won't happen. So here we are.

    Goooooooooooo jooooooooooooe! :o
  • Re:Great news, but.. (Score:2, Interesting)

    by Monkeyman334 ( 205694 ) on Tuesday April 27, 2004 @08:36AM (#8982537)
    I was taught joe as my first editor, I haven't had to need to switch really. I can use it really well. But you're right, I usually have to request joe to have it installed on servers. I also recommend jpico to users who like the ease of pico with some more features. Although my joe teaacher switched to emacs. Maybe I'll switch sometime.
  • by Kynde ( 324134 ) <kynde&iki,fi> on Tuesday April 27, 2004 @08:37AM (#8982554)
    I think not. Turbo pascal 4 and 5 were still the same wordstar driver non-gui ides. I can't be absolutely sure that there was no GUI option, because I ran it on Dos alone. It was 5.5 that got OOP into pascal and I'm dead certain having used that with same-o text console ui.

    You sure you're not mixing it with Turbo C, for which the version 2 (2.x?) was the last before it turned into a Borland C/C++ 3.0. (for which I faintly recall it was still possible to use the wordstar-like bindings but at this point it was definitely graphical and in windoze)

    Or do you mean that this TurboVision IDE is this same text based ide that I'm talking about? But that was wordstar based and it was non graphical.
  • by Croaker ( 10633 ) on Tuesday April 27, 2004 @09:11AM (#8982856)
    Joe (the Joe in JOE) was my college roomate. He'd stumble in in the middle of the night to rave about this or that optimization, and how he'd figured out the perfect way to do such-and-such.

    Technically, the one thing Joe kicked most other editors asses at (except perhaps vi) was its ability to provide a user-friendly text editor environment over slow connections. Joe paid a lot of attention to optimizing the screen redraws to ensure that the minimum number of characters were sent over the pipe. Back in the days of 1200 baud modems and painfully slow cross-country telnet sessions, this made a big difference.

    It's funny how JOE (the editor) keeps turning up... I hacked my TiVo recently following all of those instructions on the Internet, and was amused to see that the editor of choice for TiVo hackers is... Joe!

    Later today I'll be installing Gentoo on what is going to be my home theater box. The first program I'll emerge? Joe. Simple as that.

  • by ExpressWay ( 766342 ) on Tuesday April 27, 2004 @09:29AM (#8983040)
    It's fun to read a thread on character editors once again. These discussions pop up only occasionally these days. It's so rare to find a subject where everyone is right, everyone is wrong, and no one is without an opinion, yet everyone recognizes that the issue is of no consequence, so we avoid personal attacks. (At least with my threshold.)

    Here are my qualifications: I've been using UNIX for 32 years, starting with ed, the original line editor. No screen editors then because we didn't have screens. They didn't show up until around 1975. Soon after Bell Labs employees who went to Berkeley started bringing vi back with them.

    Anyway, now for my opinions:

    1. One must distinguish between the learnability of an editor and its usability. (True of any user interface, in fact.) For UNIX character-oriented screen editors, there is a huge difference between the two. For other user interfaces the difference is not so great, but it is in this case. Go to a beginner learning vi and you will find that the modes are confusing. Go to an experienced vi user, and you will find that he or she is barely aware of the modes.

    2. I edit UNIX files a lot, but in two very different ways: The first is occasional use, right at the console, when I'm unfamiliar with the system or just setting it up. In this case the last thing I want to do is install an editor. I would be happy to use ed; I just want something quick to, for example, set up an fstab file. The second kind of use is for everyday editing, and for that I'm willing to take the time to install what I want. Actually, though, because I have so many different machines, I don't bother. As soon as the system is able to, I go to my primary machine and access the new machine via SSH or Xterm.

    I used to think, as many others here do, that vi was the essential editor to learn because it is always there. Imagine my surprise when I installed gentoo the other day and found no vi! Something I'd never heard of, nano, was there instead. OK, fine, Control-o to write the file. At least it was listed at the bottom of the screen. Soon I "emerged" vi (vim, really), and the Gentoo system was back in the fold.

    For everyday use, I never use a character editor anyway. I did once, but stopped around 10 or 12 years ago. (Guys, I'm way older than most of you, but even I know that it's 2004!) So for me (given my description of the roles editors play, above) joe has no use whatsoever. In fact, it solves a problem that I don't actually have.

    Nonetheless, I wish the new joe project all the best. WordStar (which I used a bit in the mid-1980s) was a great piece of work, and it's nice to see it live on.

  • Column Editing (Score:2, Interesting)

    by Libertaine ( 315890 ) on Tuesday April 27, 2004 @09:57AM (#8983369) Journal
    You know speaking of editors what I really want is something capable of column editing. Under windows I found ultraedit but nothing with linux. Makes me wish for ISPF again.
  • by ripbruger ( 312644 ) on Tuesday April 27, 2004 @09:58AM (#8983389) Homepage Journal
    Mandrake 7.0 had vi, but that thing is a horrid joke no matter what anyone says (I'll be flamed for this). I found JOE a lot easier to use, and it was possible to discover what was going on in the program, as opposed to having to look up how to quit vi on the net somewhere. I actually started using JOE because it shares the same name as me ;).
  • VI modes FUD (Score:5, Interesting)

    by oren ( 78897 ) on Tuesday April 27, 2004 @10:21AM (#8983658)
    VI doesn't have modes, damn it! VI has commands, period. It so happens that some commands have arguments, one of the possible arguments is text to be inserted into the file. There is no "insert mode" and "command mode". If you learn VI keeping this fact firmly in mind, you'll have no problems. If you try to keep track of "insert mode" vs. "command mode" you'll get lost faster than you can say "dt,f)P".

    People get so hung up about VI's "modes" they miss its true brilliance - its orthogonal command structure: a VI command is usually a combination of (1) character(s) indicating which action to take followed by (2) character(s) indicating what area of the file is affected. For example, if 'w' moves the cursor one word, and '$' moves it to the end of the line, then you can combine them with the 'd' (delete) action to obtain 'dw' - delete word and 'd$' - delete to the end of the line.

    When you insert text, you type something like "aText", reading "add-to-right-of-cursor" "Text" "done". "Text" is just an argument to the "add" command (there are various other commands that also insert text into the file). There is no "insert mode", there's just "writing the argument to an insertion command".

    This is much more intuitive than remembering that control-W or alt-E deletes a word and control-T or alt-Q deletes to the end of the line. It is also much, much more powerful, since at the price of N+M commands you get all N*M combinations. No other editor comes even close. I'll bet most non-VI users don't know whether their editor even has a command to delete to the end of the line, and even less what the command is if there is one. No to mention useful things like "cut everything between this parenthesis" ("d%"), or "copy the next function argument" ("yt,").

    *That* is what VI is all about. It is also why so many editors can be made to emulate each other's keystrokes, but they can't emulate VI.

    I have had friends learning VI, and once this simple notion "clicked" they became proficient very quickly. Watching people learn VI is rather fun... first, make sure they understand the above. Then, and only then, let them work through the tutorial, and in general use VI for all their editing work.

    For the first few days, they'll tend to throw a chair at you if you ask them how well things are going. Don't worry, that's a normal response. Most people drop off at this stage, but since your vic... - sorry, friend - knows why he's going through this, he'll pull through.

    Within a week you'll see the "click" happening. It is easy to verify; at this point, be prepared to duck another chair if you dare suggest to the new VI convert that he give it up for the "intuitive" editor he's been using before. The real fun part is having plenty of witnesses to both the "before" and "after" reactions.

    Now, if someone decides, for some mysterious reason, the universe needs yet another editor, at least do it *right*! The "perfect" editor would use the VI way of constructing commands, but all commands would start with control-X or alt-X, so that normal ASCII characters would be just inserted. My biggest disappointment with Emacs is that it doesn't work this way. I'm certain it is possible to write an Emacs mode that _does_ work this way, but nobody did (except, of course, VIPER - which makes Emacs emulate VI).

    I have been using VI ever since its first version came out for UNIX version 7, and AFAIK, in all this time, *nobody* has *ever* came up with another editor that uses VI-like combined operator/operand commands. For the life of me, I can't figure out why. I suspect a lot of it is due to people getting so hung up about VI having "modes" and therefore being so "bad" there's nothing good to learn from it. Well, their loss!

    Well, I (and many others) will hang on to our out-"moded" editor. VI addiction is so strong that I have personally ported VI to VMS to satisfy it. Today we have VIM running on every imaginable platform, so getting our fix is easier than ever.
  • JED (Score:4, Interesting)

    by Tmack ( 593755 ) on Tuesday April 27, 2004 @10:40AM (#8983887) Homepage Journal
    Alright, I havent tried JOE that much, but the other one, JED, took me away from emacs forever. I cant stand editing and programming in vi, I know it enough to use it if its the only thing around, but its still too cryptic, and has a steep learning curve and no built in help (other than Invalid Command!). Granted, you wont need the help once you master every command an editor has to offer, but who really has time for that? If I should work on a project where a command I never used before would speed things up, with vi I would have to launch a manpage or browser and go look it up. JED, like emacs has apropose (not sure about JOE). Having started under emacs, JED's default emacs mode made me feel at home (it has a Wordstar mode too if you prefer), and if your terminal supports color, you get your syntax highlighting (and its been there for a while, ie: not a new feature). Add to that the different language packs (that auto-load by file extension or #! line) for different programming languages to auto-indent, check basic formatting rules (checks parenths/brackets/; etc) and change the syntax coloring rules, and it has multi-level undo! Add in the interactive replace_cmd and most of emacs' useful functions. I tried it when I was tired of emacs bloat, vi's err vi-ness, ed's uselessnes, and started trying the other varients installed from my slack distro. Joe was a step up deffinately, but to me Jed was better.


  • Editor Wars . . . (Score:3, Interesting)

    by Java Ape ( 528857 ) <mike.briggs@360 . n et> on Tuesday April 27, 2004 @11:39AM (#8984650) Homepage
    There have been a number of excellent comments regarding ubiquity, use or screen space, and ease of use. Like most holy wars, there is some truth on all sides. I've used Joe -- it saved my butt several times years ago when vi was a strange and foreign demon-tool to me.

    Having worked for companies that preferred both emacs and vi, I've learned both reasonably well.

    The best editor is the one that meets your needs. I consider all of these as terminal editors, good for quick and dirty edits of small scripts or config files. I'm personally partial to vi, and use it frequently for such tasks.

    The best GUI editor I've ever found is JEdit. It's fat, written in Java (not universially installed by any means), and likes to take up screen real estate. But it has so many features to make text-editing painless! My goodness, it's like the good-parts of every other text editor I've ever worked with, and it's got syntax higlighting etc. for every language I've ever heard of. No offense to the GUI versions of VI and emacs, but they've been roundly beaten.

    Personally, if I'm going to get serious about editing code, it's almost always better to either transfer the files to my local box or install JEdit on the remote system. I lose a little time in setup, but I can work much more quickly and efficiently.

    Naturally, if all I want to do is add a hosts entry or change a firewall rule, I'll use a console editor. Big job = big tool, little job=little tool. It's a simple concept.

    While it may be true that to a man with a hammer, all problems resemble nails, at least we can employ a variety of hammers!

  • Give me a break (Score:4, Interesting)

    by 93 Escort Wagon ( 326346 ) on Tuesday April 27, 2004 @11:40AM (#8984664)
    ...and cannot finish understanding vi's modes...

    Why do vi folks always think "if you don't like vi it's because you don't understand vi"? Maybe we prefer a different editor simply because we do. To me, vi seems like a relic of the 80s - a powerful relic, to be sure; but still it's a relic.

    On a related note, I don't use "mail" from the command line anymore either...
  • Regarding arrow keys (Score:3, Interesting)

    by ShinmaWa ( 449201 ) on Tuesday April 27, 2004 @12:39PM (#8985469)
    (Regarding arrow keys): The reason for this is that vi was invented and was popular before arrow keys were a standard thing on all keyboards.

    I'm going to expand on this a little because you missed an important point on why vi behaves as it does. The reason why arrow keys "mess up" documents is that vi is a character mode editor. That is, it reads one character at a time and interprets it as a command as if it was typed.

    On the VT-100 series of terminals, the arrow keys map out to: ESC + [ + (A|B|C|D) where A is up, B is down, C is left, and D is right. So when a person is in edit mode in vi and they hit, say, the right arrow, they end the insert (ESC), get a beep for an invalid command ([), then get the remainder of the line hacked off (D). Combine that with the other arrow key sequences and you can get a real mess in a hurry.

  • JOE's my right hand (Score:2, Interesting)

    by bitspotter ( 455598 ) on Tuesday April 27, 2004 @02:50PM (#8987077) Journal
    I use JOE almost exclusively. being converted from windows notepad, I find a heavily-modded jpico configuration was easiest for me to pick up.

    The only exception is when I use NEdit to copy a whole document (bigger than the screen) to the clipboard, or vi before I have JOE installed on a new system (usually just to edit /etc/apt/sources.list so that I can apt-get install joe :).

    What with (weird, but usable) search & replace regexes, recordable macros, useability in non-X environemnts (I work remotely with machines with broken X forwarding a lot), insane customizability (jpico, jstar, jmacs emulation modes), and the ability to pipe stuff back and forth from the shell, I don't really need anything else, and I didn't need to re-learn a whole lot to move to it.

    Besides, with the time I saved by not participating in the vi/emacs wars, I actaully got work done!

FORTRAN is the language of Powerful Computers. -- Steven Feiner