b58 alternative syntax for UserRPL strings, and using 34 CHR to make a string containing a single [ ] character all by itself, there is also another simple way: INPUT Whatever you now type into the editor will be returned as a string, after you press ENTER; you may include all the [ ] characters you want. :: o this also works when you're moving something ( a block of text ) from your big box to the 48... the prefix would be: %%HP: T(1)A(D)F(.); C$ $ block of text of unknown length... -- :: o ...-..-..-..-..-..-. . .-. .-. .-..-..-.. .-. `-' `-'`-'`-' `-' `. ^ .' `--^--'`-'`-'`-'' `--^--' Thinking Is The Enemy; Dada Your Way To Happiness! Let me see... string or C$ 8 string or C$ 100 string or C$ $ string Maybe one of these will do what you want. I'm sure there are other ways also... dan make sure you wait 1/2 second or so for the 'hourglass' to stop after you press' left-shift' and before you press 'on' to turn the calculator 'off'. 'Dennis' Dennis It just takes a few minutes to upload the ROM to your PC, so it should be no problem. But don't tell the uploader does not work... I saw one at http://www.hpcalc.org/pc/emulators/ Simply inquiry, does anyone know where a person might be able to download a copy of the users manuals for Hewlett Packard Calculators?, in any format. Hewlett Packard's calculator assistance telephone number was dead. * You program your HP48 and have never seen a real developing environment ? * You look for an easy tool for file transfer ? * You need someone managing your backups ? * You would like somebody's doing all the stupid char conversion stuff ? * You don't want to spend money ? * And you want it all in one ? Well, have a look on the HPShell ! After 5 years of continuous development it includes now a huge list of features one would like to have while programming the HP48 or simply using it. This is a (not complete) list of it's features: - * Multi functional Editor with Syntax highlighting, Line Wrapping, HP48 Displays, ... * File Transfer (Kermit included, ANY other protocol is also useable!) * Backup Management * DOS and HP48 Directory Management * Macros, Hotkeys, Toolbar * free defineable Toolprograms * and much more !!! * IT IS FREEWARE ! The HPShell can be found online on the Web at Here you'll find a more complete list of features, screen shots and a list of download-links (including previous versions) spread all over the world. I have also collected a huge list of HP48 related links on the internet. Go and check it out ! Differences to the previous verison (3.11): This release is a pure bug fix. Source Code of the HPShell: With this version the source code of the HPShell is released and for more infos. -- Tom Wellige http://www.wellige.com http://hpshell.wellige.com System RPL (or SysRPL for short) is a superset of the language described in the manual (known as User RPL). So, it is more powerful, and generally faster than User RPL (because it has no automatic error checking -- this job is left to the programmer). Machine Language (or ML, sometimes referred as Assemly language) is, as the name says, a language that gives instructions directly to the processor. This means generally the fastest code possible, but it is much more complicated than User or System RPL. If you are interested in learning System RPL, go to my home page at http://move.to/hp48g . There you«ll find the tutorial/reference ¬Programming in System RPL¬ written by Yours Truly, Eduardo M Kalinowski http://move.to/hp48g I have owned the origional EE card and the Spice48 card, and I would have to agree with Al. They were fun to play with at first, but pretty useless after that. (I also had the origional math card.) The older cards (including the Spice48 card) are written mostly in slow userRPL. The do include a pro version of Donnelly's browser library, which is written in sysRPL. The newer Pro series cards are supposedly written in sysRPL and assembly, and so should be a bit faster than the older version that I had. But I still was not overly inpressed with the ones I played with at the university bookstore. Just my two bits... dan EE PRo, not very helpful in undergrad course work. I bought EEPro at the beginning of my junior year andthe only thing I've used the card for since is checking the greek alphabet once in a while. The equations may be nice on a PE exam, especially the cash flow diag!!! But I found that a directory for each class and each formula you've learned stored with erable, solvsys is most all you'll ever need!!!! Later, ML on some functions. My GXKEYS are not working correctly, however, when I press the desired 'hotkey' instead of performing the assigned function, the function is displayed on the stack; ,.... alpha-green shift-spc gives me the word 'expand' on the stack,. etc. What have I done wrong in installation to cause this? Any help is appreciated, Mark Lofquist mlofquis@vt.edu Note also on the title page of the ``TI-89 Guidebook'': The TI-89 Symbolic Manipulation was jointly developed by TI and the authors of the DERIVE(R) program, who are with Soft Warehouse, inc., Honolulu, HI. - I'm releasing version 1.2 of raton, which simulates a serial mouse for your PC. The most new change is reduce redundant code 50%!!! now it's only 2kb and needs ufl library you can download it at: http://members.xoom.com/bnll4 Bnll4 bnll4@usa.net I'm searcing for programs about steam lows etc. questions.... -:: o of course...there are more interesting questions... such as; is there a way to install a better, louder, more attention grabbing alarm sound into an alarm? is there a way to set an alarm to go off only on the week days, but not on the weekends, without having to set 5 alarms? is there a way to set an alarm to go off on the 3rd Wednesday of any given month, and automatically reset itself?| is there a way to set an alarm that will go off, and then there after go off every 3 minutes until you finally turn it off, or in the event that you're not home, go off only a fixed number of times, oh, say like 10 times, then quit? if there a way to schedual an alarm to go off everyday, reschedually itself, for 10 days, then automatically stop rescheduallying itself? yes, you can do that, and that, and that, and that, and uhhhh...i lost count... I've done that on my GX, which now wakes me up (or tries to). It produces some random beeps for 10 seconds, and it only reschedules itself for the next week day if I press the good key. If I don't press anything, or the wrong key, it reschedules for 2 mn later... The 10 seconds could be seen as not enough, but in fact, it perfectly fits my needs... It's very hard for me to wake up, and if my HP produced beeps for more than 10s, I could shut it off and still not be waked up... ;-) it yet. So I post the question under another title. Does anyone know, how to build Arrays of strings with JAZZ? In RPLCOMP.EXE its ARRY [ test ......]. How can I extract a string from such an array? The command GETATELN gives back a bint. Do I have to convert the bint to get the original string? What are the commands I need? This was written by Joachim. answered RPLCOMP.EXE ASSEMBLE CON(5) =DOARRY REL(5) End CON(5) =DOCSTR CON(5) 1 Number of dimensions =1 CON(5) 5 Number of elements (in 1. dimension) REL(5) S1 Size field for string NIBASC 'First Message' S1 REL(5) S2 NIBASC 'Second Message' S2 ..... .... S4 REL(5) End Size field for last string NIBASC 'Last Message' End RPL Since I discovered that the message-table in a lib can be a linked array as well as an ordinary array, I have had a look on how to make and use linked arrays. (Linked arrays use more space, but give faster (constant) access time) The example below is easily made using Jazz. By using the macro-capabilities and the counter in ED, it took me no more than 5 minutes to convert the message table from JAZZ (113 messages) into a linked array ASSEMBLE CON(5) =DOLNKARRY REL(5) End CON(5) =DOCSTR CON(5) 1 Number of dimensions =1 CON(5) 5 Number of elements (in 1. dimension) REL(5) S1 REL(5) S2 Offsets to the strings CON(5) 0 Missing element REL(5) S1 REL(5) S2 REL(5) R1 Size field for string S1 NIBASC 'BLABLA' R1 REL(5) End Size field for string S2 NIBASC 'HABLA' End RPL This will give a linked array with 5 elements, but only 2 different strings and one missing element. Size is 41 bytes, cksum # E44Bh In this case you would have used more space by using an ordinary array: 25+2*(5+12)+2*(5+10)+5 nibbles = 47 bytes but it would not be nescesary to make arrays of this kind as messagetables. To extract elemtents from linked arrays use: For messages: #lllmm JstGETTHEMSG ( #99201 would get the first m. from JAZZ (lib. 992)) note or better: #m.nr Linked Array :: PTR C501 NOTcaseFALSE TOTEMPOB TRUE ; (I do not know how PTR C501 works, disassembling using JAZZ does not work) For different elements: use GETATELN from the above examle, you will get rubbish or in worst case a crash. String number 3 will resturn FALSE, as it should. Make sure to test the arry-size before you try to get string (use ARSIZE, MDIMS or DIMLIMITS). GETATELN works ok if the array is filled with reals instead of strings. net comp.sys.hp48:85541 How can you have a brand new 42S?? I thought HP discontinued them in 1995... -- Michael Burr - Renaissance Man Wanna-Be, Mount Vernon, WA 97% is enough! Support Julia Butterfly - http://www.lunatree.org/ 1st Is it sufficient to write the nibble #8 at the i/o ram address #0011C to turn on the led ? 2nd If the first is right, and if i use a loop like this loop A=DAT0 P DAT1=A P D0=DO+ 1 B=B+1 A ?B#C A GOYES loop (assuming that D1 points to #0011C, D0 points to the nibbles to be send which are located between the adress B and C)(the nibbles are #8 or #0, i.e. on or off) considering that this loop needs 67 cycles, each cycle having a duration of 0.25 us (on G series), i can send a bit every 16.75 us. Finally, i obtain a send frequency of 59.7kHz (59700 bits p s). Am I Right ? Has anyone had any problems with the HP48 cash back scheme run by HP last year, or indead has anyone managed to get any cash back under the scheme? I purchased the HP48G+ in November last year and sent off for the cash back an have received nothing, nor have I received a reply to a letter I subsequently sent asking or the money. I would have expected better from HP. I am an electrical engineering student who need some help. I am trying to make an program on the HP48 which can calculate short circiut current. I thought it would be simple, but I am having problems to define parallell impedances in a circuit. Anyone who can help me. ? to be stored in a matrix. I would be greateful for any help Kjetil Is it a normal program or a compiled library ? http://www.wellige.com http://hpshell.wellige.com http://come.to/hp48network type in the function goto: LEFT SHIFT, SYMBOLIC press: EXPAND or COLLECT btw.: the hp can NOT calc symb. the ti is much better in this. there are some proggies for GX witch allow you to calc symb stuff Blaze-X Because for the new HP to be number one (in symbolic processing) it will have to beat the current leader and that is the TI-92(Plus)/TI-89. Carlos. there than here in Western Australia. I have'nt use it much only for complex math problems,, but there is so much you can do with it now i want to transfer software from my computer to my hp48gx but question is friends i have a Mac and are IBM which is the computer to use to tranfer software to the hp48gx and what cables do i need. fixed that problem, but now instead, once I've used the program successfully (assigning an ID number to my library and a title) I cannot see where the library is. I get a serie of adresses for the programs contained into the Robert. '48 ? Also, I think that if someone made an C compiler, I guess it would be much easyer to program the '48. Olav Bjarne Instefjord insola@online.no Norway manuals. they are the Calculus Pac (PN 10111-1A) and Mathematics Pac (PN 10071-1A). each Pac for $60 including shipping. Calculus Pac (PN 10111-1A) This pac is a collection of tools and equations that will significantly extend the calculus capabilities of the HP 48SX and HP 48GX. Access the function library for curve fitting routines and root-finding. Integrate by left, right, and midpoint rectangles, trapezoids, and Simpson's rule. Access integral tables, plus add your own. Graphics include 2D and 3D, including hidden-line removal. Symbolic vector and differential equation solving. Features: [Eth]Function Library [Eth]Integration Analysis [Eth]Plotting Tool kit [Eth]Vector Tool kit [Eth]Integral tables [Eth]Limit Analysis [Eth]Reference Data [Eth]Constant Library Function Library [Eth]Fit one point/slope [Eth]Fit two point/slope [Eth]Fit many points [Eth]Piecewise functions [Eth]Build polynomial form roots [Eth]Find roots of polynomial [Eth]Taylor expansion calculation Integration Analysis [Eth]Left rectangles [Eth]Right rectangles [Eth]Midpoint rectangles [Eth]Trapezoidal rule [Eth]Simpson's rule Solve and plot differential equations using the following methods: [Eth]Euler's method [Eth]Modified Euler's method [Eth]Runge-Kutta method [Eth]Slope Field The plotting Tool kit contains commands oriented at enhancing the graphics capabilities of the HP 48SX. 2-D Graphics features include a trace function. 3-D Graphics features include plotting of parametric curves and surfaces along with hidden-line removal. Now Symbolic Vectors are supported by the Calculus Pac! Access over twenty-five programmable commands. Indeed. As is mine, I fondly think. The question in my mind is: what was the level of effort needed to achieve that with each language - and why? There is an old saying: it's a poor workman who blames his tools. And truly, a good craftman can create remark- able works with even the poorest tools. But then, as I noted before, we _are_ professionals, we can deal with tools like these. But if OSHA covered programming lan- guages like it covered machine shops there are a couple of well-known languages that would never again see the light of day... The audience does, I would think. And who are they? That's the question: are they professional programmers? Engineers of various stripes? Students? Teachers? HP has always tended to aim for engineers of various types. That might still be their target audience. But if they were to aim for professional programmers, they might reach a wider audience overall because of the greater number of applications. Or they might shoot for students since they far outnumber any of the above. Not being privy to HP's marketing plans, all I can do is point out that no one language can serve everyone in the above list. Yes, I see that. You know, the vast majority of complaints I've seen about Pascal have come from people who first learned a weakly typed langauge. Never having learned how to design with strong typing in mind, they percieve Pascal as out to get them with nit-picky details. Of the people I've seen go the other way, learning Pascal first and then C, the complaints go largely the other way - working without a net being the favorite complaint ( whaddaya MEAN the program won't abort if I index off the end of an array? That could clobber the stack! Yup. Don't do that. ) But I did not intend to make this thread a simple C-vs-Pascal flamewar. The original poster complained about certain features of Pascal and then recommended C - a language with virtually the same drawbacks and many more of the same ilk. I think we are dealing here with the baby duck syndrome. Different languages have different strengths _and_ different philosphies. One cannot simply transliterate a program between them and expect to have a program that works well. Personally I don't think anyone can call themselves a professional until they have at least a half a dozen languages under their belt, and be quite com- fortable in at least three, _including_ C and some member of the Pascal family. People who have learned but one language inevitably suffer from newbie carpen- ter syndrome: when one knows nothing but the hammer, the whole world looks like a nail. But it ain't so. Au contraire. While RPL is quite extensible in terms of operators it is entirely UNextensible in terms of new data types. Without that, every new type must be dealt with as a list. Lisp does, yes. Scheme, however, like RPL, does not provide means of defining new data types, once again, they must become lists. All of these languages provide facilities for defining new types except for Basic and more-or-less Fortran (later Fortrans have some features to do this, earlier ones had features that could be perverted into creating datatypes sort-of). The rest all provide some variation of the struct, the basis for aggragating primitive types into new types. They also provide extension by creating new procedures. C++ even provides for overloading existing operators - the only feature they lack is defining new operators. But creating new operators is _not_ the defining characteristic of an extensible language. At most it contributes to the perception of the _degree_ of extensibility. Incidently, if you Really Really Like totally extensible languages - procedures, data types, operators, syntax, the works - try tcl. Tcl would not be a bad choice for a new calc at all. You do need to grok macros, though, or the syntax, while simple, will seem as arbitrary as Pascal's typing complaints. An off-the-shelf Lisp would not be a bad choice either, but Lisp tends to be somewhat opaque to a lot of newbies - but then, so is RPL. I have an esthetic objection to anything with car and cdr , though. Why the most architecture-neutral high level language ever invented should have its two most primitive operators named after a pair of registers on the first machine it was implem- ented on, I have no idea. Actually, I see no reason why HP must commit to a language at all. Most languages have _something_ to recommend them. If the calc itself is built like a generic small computer, with a rom that provides a library of built-in routines and a minimal calc OS, it seems to me that the resulting device would be flexible enough to run almost anything. Languages could be loaded and unloaded as we do applications now. -- I need some hardware specific information. - Does anybody know the UART frequency viewed at the BAUD register #10D bit 3 [UCK] - Any information about the bits [ISQR TSQR USQR VSQR] [KDN NINT2 NINT LSQR] in the SRR registers at #118, #119 == Should the new name in Level 2 be enclosed in double quotes? Should each of the variables in the list of variables in Level 1 be enclosed in double quotes as well? Any other ideas about what I may be missing? Text only versions of the FAQ will be posted to the newsgroup comp.sys.hp48 and comp.sources.hp48 as needed (usually every two weeks). Also, remember that all official FAQs (including this one) are mirrored at rtfm.mit.edu. Specifically, this one is at: ftp://rtfm.mit.edu/pub/usenet-by-group/comp.sys.hp48/ Furthermore, the text FAQ is posted to comp.answers and news.answers. following key for authenticity, and provide MD5 Checksums for the remaining files. You can get a copy of this public key through the URL above. Type Bits KeyID Created Expires Algorithm Use sec+ 1024 2CFAA0BB 1997-06-21 - DSS Sign and Encrypt sub 2048 F940E148 1997-06-21 - Diffie-Hellman Alternate Sites =============== Alternatively, you can download the FAQ at one the following locations: North America: Latest: http://www.hpcalc.org/docs/faq/ Older: ftp://ftp.hp.com/pub/calculators/hp48g/docs/ Europe: - Latest: ftp://ftp.stud.fh-heilbronn.de/pub/systems/hp48/incoming/ Older: ftp://ftp.stud.fh-heilbronn.de/pub/systems/hp48/info/FAQ/ Translations: - Espanol (Spanish): http://www.alumnos.utfsm.cl/~aarrieta/hp48.html Portugues (Portugese): http://members.tripod.com/~area48/ Contacting Me ============= I rely on your input in order to keep this FAQ up to date. If you have any is: aschoorl@engr.uvic.ca If you're using a web enabled news reader, you can click here: Charset: noconv iQA/AwUBNoqLNehzXOws+qC7EQJ4OACg/0aYBeXvteh7Hq8h9NRm8ttKPbgAoKSH 8ZbNg6DFVr1Hbn+R5ZoQ5AQs =Ss4t -- http://www.engr.uvic.ca/~aschoorl/ The 32SII's retail price in 1991 was $70. Educalc currently sells them for $60. Though that might seem high, it's an excellent calculator for is simply the type of calculator that lasts a life-time. -- Brian Stone stone@StoneEntertainment.com --:: o which is still the price of a TI or Casio Graphical Calculator...??? granted, the 32 is a nice calculator, and it arguably built to withstand terrorists better than the 48's, but given it's 200 (?) programming lines, and one line numerical display...60$ just seems a little high when commared to the features and prices of other calculators... it seems to reside off the calculator continuum... such that the continuum that the 32 DOES exist on, is the Jewelry continuum...! -- :: o ...-..-..-..-..-..-. . .-. .-. .-..-..-.. .-. `-' `-'`-'`-' `-' `. ^ .' `--^--'`-'`-'`-'' `--^--' Thinking Is The Enemy; Dada Your Way To Happiness! I was reading the HP48 Insights book today (just got it) and he gave a short history of HP calculators but I don't think the 32 was mentioned. Where does it fit? Barry does it fit? --:: o i think that it was supposed to have evolved out from the 11C. HP redesigned many of their calculators after the introduction of the 28, which spelled the demise of the long standing workhorse, the 41, which became a dwindled 42... even now, the 41 did many things that the 48 can't do, or can't do easily... such as feed output to a television...!!! or operate lab equipment...??? o Both are made of similar expensive plastic. o Costs of manufacture and marketing might not be so divergent. o The people who designed them are all on the same pension plan. o If they were cheaper, people might confuse them with TI :) Rudimentary: - elimination of already reduced rows and columns by pivotation - balancing of the matrix to hopefully reduce the 1-norm - Householder reduction to upper Hessenberg form, accumulate transformations if eigenvectors requested - for real matrices: double-shifted QR, split of 1X1 or 2x2 diagonal blocks when reduction to quasi-triangular form is finished, determine eigenvalues from 2x2 blocks + corresponding eigenvectors if requested for cplx matrices: single-shifted QR for both: apply givens rotations to eigenvector matrix, if requested - undo balancing and pivoting All input is converted to 15 digit precision, and the output is packed back into 12 digit UserRPL reals, as with most 48G matrix commands. I am writing a much more in-depth document, but examining 20k of undocumented SysRPL that's half full of unsupported entries takes time; the QR-step for now is a (educated) guess, all I know is that the algorithm takes a different approach for real input vs. complex input. Up till now the code resembles ==== And the girl wasn't scottish, but irish. The algo is in fact a new encryption one, it's much faster than RSA, but I've been told that the data is 8 or 16 times larger... Memory size is also an important issue on the 48. the function has the absolute value as a part of its definition. The function I want to study is this one: neg(abs(X^(-1))) Why should I remove the absolute value? ERABLE does not want to do a series expansion for an absolute value. If the two function coincide in the region of interest and one includes an absolute value, ERABLE can find both limits by looking at the one without the absolute value sign. and sin(x)^2/x^2. Erable can deal with the second but not the first! Forget it. Now it's working perfectly. It was a flag. I don't think so, just type VER to be sure to have all flags to default state (and to be sure to have the latest 3.201 version). I tried it on my x48 emulator at home and I got the correct +infinity as first element of the list at level 2 after the SERIES call. Sir, the function has the absolute value as a part of its definition. The function I want to study is this one: neg(abs(X^(-1))) :o) Why should I remove the absolute value? Bernard, will you answer me someday? look at stolte-edv.com dirk we are developers of the speed up module for the HP48g/g+/gx. greetings from germany Dieter I just purchased a 1MB GRiD card to use in my hp48GX. It works great...so far. However, I am worried about the much talked about clamping that may have the effect of destroying both my hp48GX and the RAM card. Has anyone ever modified their GRiD card so that clamping was disabled? I understand that this has been done on a Smith Corona 32K card. http://www.hpcalc.org/docs/misc/smith.txt I assume that the same modification can be made to a GRiD card? ==== If you mean to use the IR diodes on the HP48 as a Laser Scanner to read ==== I think the only real problem would be that you'd need some kind of collimating device to put over the IR LED/phototransistor pair to read closely-spaced barcodes, as otherwise I doubt the spatial resolution would be very good given the beam spread of the IR LED in the HP 48. Once you had that it would be a simple matter of programming. -- Steve VanDevender I ride the big iron http://jcomm.uoregon.edu/~stevev bash awk grep perl sed df du, du-du du-du, vi troff su fsck rm * halt LART LART LART! -- the Swedish BOFH ionews.ionet.net!hub1.ispnews.com!howland.erols.net!nntprelay.mathworks.com. M ISMATCH!newsfeed.mathworks.com!remarQ-easT!supernews.com!remarQ.com!remarQ69 ! ==== comp.sys.hp.mpe:54326 comp.sys.hp48:85672 Is there any way of writing into the text section of an executable on HP ? I am trying to change my executable code while the code is running - and I am getting a bus error - because of access erros ? Does anybody know how to make the text section writeable ? Pallab The user's manual says to put the command as a string with and a packet type as string wih What are these commands and these packets type ? Aldiney : The user's manual says to put the command as a string with : and a packet type as string wih : What are these commands and these packets type ? Get a good Kermit reference. The one Ive found pretty good is the book by Frank deCruz Kermit: A file Transfer Protocol . There's a table in there that lists all the various forms of the command that Kermit supports. One thing I haven't seen is a list of which of these commands the HP48 supports. -- john R. Latala jrlatala@golden.net If you have Goodies Disk #10, see PACKETS.DOC in the POSTINGS directory for the complete scoop about both HP48 Kermit packets and MS-KERMIT ==== My VT52 Terminal Emulator library also contains a whole variety of commands that use PKT to do useful things like getting directory listings from the remote kermit server, deleting files remotely, changing the working directory, etc. You can download it from: http://www.btinternet.com/~mark.power/hp48.htm You might find the KENCR command useful as it encodes the parameters for most of the PKT commands. Mark. not reflect the opinion of third parties. 1 10 FOR A A 1 DISP2 NEXT C PKT when you are connected to a 48 in serveur mode -- A+ Cyrille de Brebisson Le Meilleur moment pour planter un arbre etait il y a 20 ans. Le Deuxiemme meilleur moment est maintenant The Best Time to plant a tree was 20 years ago. The second best moment is now. http://www.capway.com/brebisso My HP lose all your memory. This happen all the time when i start to play If boundary= 3DDC12C7D4BDFE909734EDD7 ionews.ionet.net!pln-e!extra.newsguy.com!lotsanews.com!newsfeed.mathworks.co m ==== This is a multi-part message in MIME format. =_NextPart_000_0015_01BE602B.8B7AE5A0 If you look at HP48 games collection, you may notice that it's always = the same kind of programmer who is able to write powerfull tools for = your calculator, in assembly for example. Look at the great DoomHP demo: The programmer is programming your next HP Calculator right now! So accept that games on a HP48 is a great thing not only for the fun, = but for the art programming. Julien Meyer Paul Smith a =E9crit dans le message = BUY A GAMEBOY!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!GEEEEEZZZZZ!!!!!!!!!! = =_NextPart_000_0015_01BE602B.8B7AE5A0 that it's=20 always the same kind of programmer who is able to write powerfull tools = for your=20 Calculator right=20 only for=20