View Full Version : Favorite programming language
oedipus rex
01-26-2003, 07:17 PM
Right now, mine 's Python. Even though it's a little slow, there's some pretty neat numerical libraries (numarray, scipy, etc) being developed.
Brad Gile
01-26-2003, 07:47 PM
Right now, mine 's Python. Even though it's a little slow, there's some pretty neat numerical libraries (numarray, scipy, etc) being developed.
I've been using (at home) C# since Beta1 in November of 2000. The .NET Framework, with its thousands of classes, is incredible.
Brad
"Karate ni sente nashi." There is no first strike in karate -Gichin Funakoshi
"Nor is there a second!"-Brad Gile
glenn
01-26-2003, 08:03 PM
Python? Don't know much about it.. What's the scoop? I've only seem some distant rumblings/libary stuff on this.
I'm moving from Perl to PHP. Perl's good for some things, but when it comes to the web any advantages it has are minimal compared to the rapid development you can get with PHP.
REXX is king. A sweet, satisfying language. No &*!#&$@ compiler.
oedipus rex
01-26-2003, 11:40 PM
REXX is king. A sweet, satisfying language. No &*!#&$@ compiler. You might want to check out NetRexx (http://www.ibm.com/technology/NetRexx/nrpacks.htm). It looks like it uses a compiler to generate Java bytecode. From there, I suppose you could compile that to native code. As far as Python goes, it's not as fast as Perl or Ruby, but it allows you to develop classes and glue apps/libraries together. Its syntax is also less ugly than Perl and Ruby. I chose it because it's more intuitive to me than Perl or Ruby, and not as limited as VB (you can create your own COM extensions, interface with just about any C/C++ API, although it's not as user-friendly and I probably wouldn't program a spreadsheet using Python). There's good numerical stuff available, plus you can use C/C++ numerical libraries (LAPACK, gsl, etc) GUI development seems pretty straightforward using wxPython. Also it's not as low-level as C/C++. In the end, it's probably just a personal choice.
oedipus rex
01-26-2003, 11:44 PM
Right now, mine 's Python. Even though it's a little slow, there's some pretty neat numerical libraries (numarray, scipy, etc) being developed.
I've been using (at home) C# since Beta1 in November of 2000. The .NET Framework, with its thousands of classes, is incredible.
Are there any widely available numerical or stats classes developed in C# yet?
Brad Gile
01-27-2003, 10:37 AM
Right now, mine 's Python. Even though it's a little slow, there's some pretty neat numerical libraries (numarray, scipy, etc) being developed.
I've been using (at home) C# since Beta1 in November of 2000. The .NET Framework, with its thousands of classes, is incredible.
Are there any widely available numerical or stats classes developed in C# yet?
Try this: http://www.jens-thiel.de/dotnet/dotnum
(I haven't yet -just googled for it). I have not seen much in this area-presumably the demand for it among developers is (and always has been) low. An excellent source of free code in several languages (including C#) is www.codehound.com . :D
Brad
ExamHater
01-27-2003, 02:06 PM
java
sb_jim
01-27-2003, 04:44 PM
FORTRAN. We own the source code for our pension valuation software so I can write my own mods and make changes on the spot. Very independent and very dangerous.
Brad Gile
01-28-2003, 11:51 AM
FORTRAN. We own the source code for our pension valuation software so I can write my own mods and make changes on the spot. Very independent and very dangerous.
FORTRAN was my first programming language-1969. In the mid 1980s, I used MS Fortran on the PC. NOW, the old war horse has added life as Fortran.NET!
Ah, no, I don't use it! :D
Brad
"Karate ni sente nashi. There is no first strike in karate."-Gichin Funakoshi
"Neither is there a second!"-Brad Gile
Brad Gile
01-31-2003, 11:00 AM
Does anyone have experience with the Eiffel programming language? They have a free download of the langage that works with Visual Studio.NET, so I d/led it! Haven't tried it yet, tho. :D
http://www.eiffel.com/
Brad
"Karate ni sente nashi. There is no first strike in karate."-Gichin Funakoshi
"Neither is there a second!"-Brad Gile
Cho Da
01-31-2003, 11:20 AM
I used Eiffel in gradual school. It's a great OO language. It's very strongly typed, so there can be some issues, but the typing makes multile inheritance almost easy! (Try that in C++). A great book on Eiffel is OOSC2 (http://www.bookpool.com/.x/okzygjnwa6/sm/0136291554).
The sell out to the .NET crap is unfortunate.
Try: SmartEiffel (http://smarteiffel.loria.fr/)
see also news:comp.lang.eiffel (http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&group=comp.lang.eiffel) and FAQ (http://www.faqs.org/faqs/eiffel-faq/)
ExamHater
01-31-2003, 12:12 PM
I used Eiffel in gradual school. It's a great OO language. It's very strongly typed, so there can be some issues, but the typing makes multile inheritance almost easy! (Try that in C++)
And the reason you are an actuary, not a software engineer is....?
Cho Da
01-31-2003, 12:49 PM
I was an actuary first, then went to gradual school. FCAS pay is much better than code grunt pay.
Brad Gile
01-31-2003, 01:40 PM
The sell out to the .NET crap is unfortunate.
Do you know enough about .NET to call it crap? :D
It's true you can't have multiple inheritance in .NET (as managed code). So, if MI is essential to your task, use a different tool. I've never needed it.
Brad
Brad Gile
01-31-2003, 01:42 PM
I was an actuary first, then went to gradual school. FCAS pay is much better than code grunt pay.
So is FSA pay. :D
Brad Gile
Cho Da
01-31-2003, 04:51 PM
The sell out to the .NET crap is unfortunate.
Do you know enough about .NET to call it crap? :D
It's true you can't have multiple inheritance in .NET (as managed code). So, if MI is essential to your task, use a different tool. I've never needed it.
Brad"Trustworthy Computing". 'Nuff said :roll:
oedipus rex
01-31-2003, 07:55 PM
The sell out to the .NET crap is unfortunate.
Do you know enough about .NET to call it crap? :D
It's true you can't have multiple inheritance in .NET (as managed code). So, if MI is essential to your task, use a different tool. I've never needed it.
Brad"Trustworthy Computing". 'Nuff said :roll:
Also, the issue may be along these lines: say you are considering devloping a large software project which will take years to complete. Would you a) develop your solution tied to a proprietary framework that has a history of reinventing itself every few years or b) develop along open standards, possibly even ISO, and stick to core libraries that you're sure will be around for a while.
Arlie_Proctor
01-31-2003, 09:44 PM
Amen
Brad Gile
02-01-2003, 01:10 AM
Also, the issue may be along these lines: say you are considering devloping a large software project which will take years to complete. Would you a) develop your solution tied to a proprietary framework that has a history of reinventing itself every few years or b) develop along open standards, possibly even ISO, and stick to core libraries that you're sure will be around for a while.
I see the point, but my response is still simply, "Select the right tool for any given job." For a lot of jobs, I think .NET will fill the bill as the tool of choice but for others, inappropriate. That hardly earns .NET the moniker of "crap". If it does, than so does every other programming system/language. :shrug:
Brad
"Karate ni sente nashi." There is no first strike in karate -Gichin Funakoshi
"Nor is there a second!"-Brad Gile
oedipus rex
02-01-2003, 01:23 AM
I agree that the .NET class library and development tools are well-designed. The creator of one of the most successful open source projects (GNOME) is leading an effort to make these tools available to other ports (mono). It is an amazingly vast class library. I imagine soon enough, portability won't be an issue so much as performance. From my own personal experience, C# code on .net seems to run alot slower than the equivalent C++ using the STL.
Incredible Hulctuary
02-01-2003, 09:51 AM
Gradual school? As opposed to sudden school?
Brad Gile
02-01-2003, 09:43 PM
I agree that the .NET class library and development tools are well-designed. The creator of one of the most successful open source projects (GNOME) is leading an effort to make these tools available to other ports (mono). It is an amazingly vast class library. I imagine soon enough, portability won't be an issue so much as performance. From my own personal experience, C# code on .net seems to run alot slower than the equivalent C++ using the STL.
Yes. Moreover, .NET is designed to avoid (as much as possible) future incompatibilities that currently arise from things like dll hell. You are right about performance re C# vs C++. Interestingly,my admittedly limited tests (http://www.vb-faq.com/Articles/Gile/raw_performance.asp) show that C# and VB.NET have essentially the same performance but both have vastly improved performance over VB6, probably due to (1) a new compiler and (2) strong efficiences introduced via the .NET Framework.
I think the biggest thing that will come out of .NET is, in fact, stability with its humongous class library. Performance? Aside from continued hardware improvements, nothing will beat a low overhead language like C++. Every approach has its advantages and disadvantages. Right tool for the right job. 'Nuff said? :D
Brad
"Karate ni sente nashi." There is no first strike in karate -Gichin Funakoshi
"Nor is there a second!"-Brad Gile
Brad Gile
02-01-2003, 10:43 PM
Incidentally, for those who ignored this re future MS OFFICE developments, I repost from a few days ago:
In today's MSDN Flash:
http://msdn.microsoft.com/library/default.asp?url=/library/en-
us/dnoxpta/html/odc_tencodeconverts.asp
C# is coming to OFFICE. :D
Brad
"Karate ni sente nashi." There is no first strike in karate -Gichin Funakoshi
"Nor is there a second!"-Brad Gile
oedipus rex
02-01-2003, 10:51 PM
that is interesting. It will also be interesting to see if open office ever catches on with office users enough to compete.
mchung
02-02-2003, 11:46 AM
My favourite programme language are SAS, VIsual Fox pro, Access
and Excel.
Michael
oedipus rex
02-02-2003, 09:20 PM
paople still use Fox Pro?
Arlie_Proctor
02-03-2003, 12:34 AM
Yep, folks still use Fox Pro, but most don't admit to using it.
For sheer data crunching and reliability, you can't beat the combination of C, PL/SQL, and Korn Shell utilities, unless, of course, you really like JCL and Cobol :wink:.
I'm just poking into C# -- if the stat libraries develop, it has promise. However, until the scientific community migrates from Unix iron to Intel-W2K, these libraries are going to be lacking.
SamChevre
02-08-2003, 12:53 PM
APL. Yes, it's old as the hills and, being a runtime language, can be slow, but it will do anything well and you can always look at the code (I hate GUI-based programs).
For just data storage and statistical analysis, SAS is my favorite. But if I had to do everything in one language, it would be APL.
Voron
02-22-2003, 12:53 AM
I know C quite well. Does it make it my favorite? Yeah, it pays my bills now! :)
mchung
02-27-2003, 12:51 PM
SamChevr,
Where can I learn APL?
What is APL?
Michael
Cho Da
02-27-2003, 01:10 PM
A Programming Language (http://www.faqs.org/faqs/apl-faq/)
1695814
03-07-2003, 05:23 PM
I love SAS, if you know what I Proc Means. :roll2:
I've been using (at home) C# since Beta1 in November of 2000. The .NET Framework, with its thousands of classes, is incredible.
Brad
"Karate ni sente nashi." There is no first strike in karate -Gichin Funakoshi
"Nor is there a second!"-Brad Gile
Brad Gile, What type of actuarial work you are using C# for?
General von Stumm
01-28-2007, 03:22 AM
Haha, it's a little bit late to learn APL. It is pretty dead even if you count K or J as APLs.
Brad Gile
01-28-2007, 06:32 AM
Brad Gile, What type of actuarial work you are using C# for?
None.
1. I retired in 2005.
2. My company never supported .net; in fact, it was downright hostile to it.
So, I did all my C# and vb.net programming at home. I realized that, eventually, .net will be dominant in MS products-including Office. Even more important to me, though, is that using .net is fun.
Brad
campbell
01-28-2007, 09:37 AM
None.
1. I retired in 2005.
2. My company never supported .net; in fact, it was downright hostile to it.
So, I did all my C# and vb.net programming at home. I realized that, eventually, .net will be dominant in MS products-including Office. Even more important to me, though, is that using .net is fun.
Brad
Since we're on a .NET kick here, what's the best book for learning .NET-type stuff?
I wonder if it would still work in Vista, though...
Brad Gile
01-28-2007, 10:25 AM
Since we're on a .NET kick here, what's the best book for learning .NET-type stuff?
I wonder if it would still work in Vista, though...
If you are new to .net, I suggest
1. Get the FREE download from MS of the Express editions of vb.net, c#,c++ and, if you don't already have it, the .net Framework 2.0. A version of sql server is also a free download.
http://msdn.microsoft.com/vstudio/express/vb/download/
http://msdn.microsoft.com/vstudio/express/visualcsharp/
http://msdn.microsoft.com/vstudio/express/visualc/
2. A basic (no pun) book that explains how to use the IDE and language (vb.net or c#). Example: "Sams Teach Yourself Visual Basic 2005" or
Wrox's "Visual C# 2005 Express Edition". Both of these Have CDs with the Express edition.
The Express Editions do almost everything The Pro version does (if you want to interact with Office or do heavy duty database stuff, you need Pro), and are definitely not toys. You may never need more. They are certainly quite useful for learning purposes.
Brad
Brad Gile
01-28-2007, 07:28 PM
Haha, it's a little bit late to learn APL. It is pretty dead even if you count K or J as APLs.
Agreed.
My favorite programming language from a design standpoint would be Q. From a utility standpoint it would be OCaml or Scheme. OCaml is faster than C++, and both are pretty clearly better for development than at the least C, C++, C#, Java, VB, Perl, and PHP. They are also IMO better for development than Ruby and Python and indisputably faster. They are also IMO faster and more usable than Haskell.
That depends on what you mean by "better". Development time and resources? Run time? Ease of maintenance? Pick the right tool for the job at hand, taking everything into account.
But of course, you can't really get a job with them or anything. Aye, there's the rub, laddie! :D
Brad
vchagas
01-29-2007, 09:02 AM
For actuarial work, my favourite programming languages are SAS for data crunching, R for modelling and VBA/R for Excel automation.
A.Life.Age.X
01-29-2007, 09:44 AM
Since we're on a .NET kick here, what's the best book for learning .NET-type stuff?
...
I just want to insert a plug for an old childhood friend/peer of mine that somehow became a Microsoft Programming genius and wrote a book on .NET. (I could tell you stories about him that you'd never even believe given where he is today). I always find it really amusing when someone you'd least expect comes out extremely successful (he was one of those kids who dropped out of HS...apparently it was because he knew all he need to know already).
http://www.amazon.com/Professional-NET-Framework-2-0-Programmer/dp/0764571354/sr=8-1/qid=1170081706/ref=pd_bbs_1/103-8477155-5048656?ie=UTF8&s=books
It might be too advanced for a beginning but he's got a full sample chapter to look view.
mark007
01-29-2007, 11:29 AM
VB.Net all the way. 1.1 was good, 2.0 is incredible. 3.0 will be better still.
Performance is the only reason I would consider not using it.
:)
If I am in the mood to do some pointer trickery and want fast speed, I choose C. However everyone has their days where they want to write something fast without much effort and be spoon fed the answers by Visual Studio... that's where VB 2005 comes in.
Brad Gile
01-30-2007, 10:58 AM
If I am in the mood to do some pointer trickery and want fast speed, I choose C. However everyone has their days where they want to write something fast without much effort and be spoon fed the answers by Visual Studio... that's where VB 2005 comes in.
I suppose your car has a manual transmission and you start the engine using a crank in the front, too? I stopped using C twenty years ago. :D
Brad
Jugglerbob
02-01-2007, 01:02 AM
R
General von Stumm
02-01-2007, 07:44 AM
That depends on what you mean by "better". Development time and resources? Run time? Ease of maintenance? Pick the right tool for the job at hand, taking everything into account.
Right tool for the job is absolutely right.
SirVLCIV
02-01-2007, 09:45 AM
Whatever other people can understand. At the moment, for school, it's C++, and for work, it's a mix of Fortran and VBA.
Brad, at least I'm not still using Cobol. Actually according to a Y2k study there is more Cobol code in the world than any other language.
Brad Gile
02-01-2007, 08:06 PM
Brad, at least I'm not still using Cobol. Actually according to a Y2k study there is more Cobol code in the world than any other language.
Cobol! Arrrrrgh! Did you know that there is actually a version of Cobol for the .NET Framework?!http://www.netcobol.com/info/whitepaper/net.html
Lord help us all!
Brad
GadgetGeek
02-02-2007, 08:53 AM
Cobol! Arrrrrgh! Did you know that there is actually a version of Cobol for the .NET Framework?!http://www.netcobol.com/info/whitepaper/net.html
Lord help us all!
Brad
But COBOL is simple that even an IT professional can use it.
Brad Gile
02-02-2007, 09:05 AM
But COBOL is simple that even an IT professional can use it.
It sure made damn good money for some old COBOL programmers in 1999. :D
Brad
JMO Fan
02-02-2007, 12:32 PM
Ah, APL, I remember it well,
but no one could read what I wrote.
Now it's Excel
Thanks to Bill Gates, it sells,
and he gets a manse with a moat.
http://en.wikipedia.org/wiki/Bill_Gates'_house
Take 2
02-02-2007, 12:37 PM
APL is still my favorite, although I don't get to use it much now.
Along the way, I went from Basic to Fortran (w/punch cards) to assembler code and RPG. Lotus 123 and APL gave way to Excel and Visual Basic. Now I hope to find somebody else to do the programming. :)
and he gets a manse with a moat.
And what a moat. Have you ever seen Lake Washington? ;)
GadgetGeek
02-02-2007, 01:30 PM
[possible thread destroying tangent]
I never had the priviledge of using APL. I have heard plenty of complaints about how it is hard to understand what someone else has done. I might argue that same is true of Excel. If you are asked to take over a spreadsheet from someone else, is the first thing you do, re-write it? Well, this number here is the sum of numbers from 6 different tabs, and based on some numbers pasted from a second worksheet...
[/tangent]
You know, I just noticed that "wtt" brought this thread back to life after being dead for nearly 4 years. (Also he is responsible for bringing back many other ones on this topic).
Brad Gile
02-04-2007, 06:40 AM
[possible thread destroying tangent]
I never had the priviledge of using APL. I have heard plenty of complaints about how it is hard to understand what someone else has done. I might argue that same is true of Excel. If you are asked to take over a spreadsheet from someone else, is the first thing you do, re-write it? Well, this number here is the sum of numbers from 6 different tabs, and based on some numbers pasted from a second worksheet...
[/tangent]
Your argument is flawed, IMO.The APL problem is inherent in the arcane nature of the language, complete with its hieroglyphics. In stark contrast, the "Excel problem" is inherent in the sloppy work of the user rather than Excel itself.
Brad
James Joel
02-04-2007, 05:41 PM
Your argument is flawed, IMO.The APL problem is inherent in the arcane nature of the language, complete with its hieroglyphics. In stark contrast, the "Excel problem" is inherent in the sloppy work of the user rather than Excel itself.
Brad
I'm not going to try to defend APL much, but I don't think I agree that the Excel problem is totally a user problem. In a sense, programming in Excel is like programming in assembly language -- only it is easier to copy and paste formulas. You can argue that assembly language is fine, and that any deficiencies are the programmers fault. And, to some extent, that is true.
What I find lacking in Excel is the ability to impose a higher order structure. Just as C imposed structure on assembly language, and C++ allowed object oriented programming, I think Excel needs a higher level construct. I've been thinking about that for some time, but haven't worked anything out yet. (Pointers to anyone elses thoughts along similar lines are welcome!)
Sherylian
02-05-2007, 02:58 AM
haha, R for statistical analysis? good old times in stats. classes
i guess my fav will be JAVA and C++... though Java seems to be easier to program with (they take quite a bit of resources (memories)), C++ is a much more powerful language
campbell
02-05-2007, 03:40 AM
If you want a higher order structure in Excel, you can always do more with VBA and less in the cells. You can also use named cells and ranges (which I use all the time, especially if I'm going to have to call a lot of VLOOKUPs, MATCHs, or OFFSETs.)
Also, when trying to figure out the flow of a spreadsheet, one can always use the Auditing toolbar, and trace dependents and precedents. That's very handy if you're given somebody else's spreadsheet (or even worse, you own, from a year prior.)
When it comes to developing either programs (in whatever language) or spreadsheets, my mantra is:
THINK FIRST, PROGRAM LATER.
If you cannot lay out with pencil and paper exactly what you want to do, it is too soon to start generating code.
(voice of experience)
I have seen atrocious programs in assembler, Fortran, APL, and spreadsheet. None of them is better than any of the others.
Brad Gile
02-05-2007, 10:01 AM
When it comes to developing either programs (in whatever language) or spreadsheets, my mantra is:
THINK FIRST, PROGRAM LATER.
If you cannot lay out with pencil and paper exactly what you want to do, it is too soon to start generating code.
(voice of experience)
I have seen atrocious programs in assembler, Fortran, APL, and spreadsheet. None of them is better than any of the others.
Violent agreement once again! Programming != writing code. It is easy to write bad code in any language that does much of anything. In my 36 year career, I saw a multitude of examples as first hand evidence of this, including a few that I wrote. :oops:
Brad
dumples
02-05-2007, 10:16 AM
If you want a higher order structure in Excel, you can always do more with VBA and less in the cells. You can also use named cells and ranges (which I use all the time, especially if I'm going to have to call a lot of VLOOKUPs, MATCHs, or OFFSETs.)
Also, when trying to figure out the flow of a spreadsheet, one can always use the Auditing toolbar, and trace dependents and precedents. That's very handy if you're given somebody else's spreadsheet (or even worse, you own, from a year prior.)
Trace dependents and precedents is great, but not very helpful when you're trying to figure out what someone did with an offset formula.
Brad Gile
02-05-2007, 11:03 AM
Trace dependents and precedents is great, but not very helpful when you're trying to figure out what someone did with an offset formula.
See post #61 above. Applies to Excel formulas/methods every bit as much as it does to VBA. Most people ignore this message, often deliberately.
Brad
Alto Reed on a Tenor Sax
08-26-2007, 09:17 PM
See post #61 above. Applies to Excel formulas/methods every bit as much as it does to VBA. Most people ignore this message, often deliberately.
Brad
I go far, far out of my way to design spreadsheets in such a way so that the path from the first AS400 query I ran to the final indication I produced is crystal clear.
When I first got my current gig, I was given about 12 monthly reports to run, that were designed by several people over several years. To the extent that I was able to follow the report's logic from start to finish, like I described above, this mentality by my predecesors saved my ass on multiple occasions. The few places where someone decided to hard-code some of the numbers, without leaving any note where they came from or how to reproduce them, or link to a monthly query then change the name of the query.....that was frustrating.
BondGirl
08-26-2007, 09:59 PM
Programming != writing code
:tup:
Java is cool because I do enjoy object oriented programming languages. You gotta love the API too :wink:
C is great for leaking memory, and spending hours "debugging" with print statements and gdb only to realize that it was segfaulting because you were missing one * .... Heh, kidding, I actually really like C, it is a lot more mathematical than Java, which is really good for graphical things.
Other programming in Matlab, Maple, Mathematica, and R are the most fun, but those are less mainstream.
A really horrible programming language is ML, I have never programmed in it though, only heard horror stories.
I've seen a little bit of VBA and I really like it! I'm glad it's the main programming tool for actuaries, because I would much rather be writing an Excel macro than a program down to the nitty gritty in C. :toast:
Rick_G
08-27-2007, 10:58 AM
Just in case you haven't seen this bit of CLASSIC humor before, it illustrates the joy of programming, and the differences in languages:
How to shoot yourself in the foot (http://michaelthompson.org/weblog/pages/THE_PROGRAMMERS_QUICK_GUIDE_TO_THE_LANGUAGES.html)
A bit more classic humor, with an OLD version of the above:
Canonical List Of Programming Language Humor (http://terhune.net/jokes/se10005.html)
campbell
08-27-2007, 11:16 AM
This seems to be a good place for this link:
Holding a program in your head (http://paulgraham.com/head.html)
vBulletin® v3.7.6, Copyright ©2000-2013, Jelsoft Enterprises Ltd.