Berkeley CSUA MOTD:Entry 52972
Berkeley CSUA MOTD
2021/12/08 [General] UID:1000 Activity:popular

2009/5/8-14 [Computer/SW/Languages/C_Cplusplus, Computer/SW/Languages/Java] UID:52972 Activity:nil
        \_ 1964 - John Kemeny and Thomas Kurtz create BASIC, an
                  unstructured programming language for
                  non-computer scientists.
           1965 - Kemeny and Kurtz go to 1964.
           This should not have made me giggle so much.
           \_ GODDAMNIT, now you've got me giggling.
        \_ 1996 - James Gosling invents Java. Java is a relatively verbose,
                  garbage collected, class based, statically typed, single
                  dispatch, object oriented language with single
                  implementation inheritance and multiple interface
                  inheritance. Sun loudly heralds Java's novelty.
           2001 - Anders Hejlsberg invents C#. C# is a relatively verbose,
                  garbage collected, class based, statically typed, single
                  dispatch, object oriented language with single
                  implementation inheritance and multiple interface
                  inheritance. Microsoft loudly heralds C#'s novelty.
2021/12/08 [General] UID:1000 Activity:popular

You may also be interested in these entries...
2014/1/14-2/5 [Computer/SW/Languages/C_Cplusplus] UID:54763 Activity:nil
1/14    Why is NULL defined to be "0" in C++ instead of "((void *) 0)" like in
        C?  I have some overloaded functtions where one takes an integer
        parameter and the other a pointer parameter.  When I call it with
        "NULL", the compiler matches it with the integer version instead of
        the pointer version which is a problem.  Other funny effect is that
        sizeof(NULL) is different from sizeof(myPtr).  Thanks.
2013/4/9-5/18 [Computer/SW/Languages/C_Cplusplus, Computer/SW/Apps, Computer/SW/Languages/Perl] UID:54650 Activity:nil
4/04    Is there a good way to diff 2 files that consist of columns of
        floating point numbers, such that it only tells me if there's a
        difference if the numbers on a given line differ by at least a given
        ratio?  Say, 1%?
        \_ Use Excel.
           1. Open foo.txt in Excel.  It should convert all numbers to cells in
2013/4/29-5/18 [Computer/SW/Languages/C_Cplusplus, Computer/SW/Compilers] UID:54665 Activity:nil
4/29    Why were C and Java designed to require "break;" statements for a
        "case" section to terminate rather than falling-through to the next
        section?  99% of the time poeple want a "case" section to terminate.
        In fact some compilers issue warning if there is no "break;" statement
        in a "case" section.  Why not just design the languages to have
        termination as the default behavior, and provide a "fallthru;"
2012/7/19-11/7 [Computer/SW/Languages/C_Cplusplus] UID:54439 Activity:nil
7/19    In C or C++, how do I write the code of a function with variable
        number of parameters in order to pass the variable parameters to
        another function that also has variable number of parameters?  Thanks.
        \_ The usual way (works on gcc 3.0+, Visual Studio 2005+):
               #define foo(fmt, ...) printf(fmt, ##__VA_ARGS__)
           The cool new way (works on gcc 4.3+):
2011/3/7-4/20 [Computer/SW/Languages/C_Cplusplus] UID:54056 Activity:nil
3/7     I have a C question.  I have the following source code in two identical
        files t.c and t.cpp:
                #include <stdlib.h>
                int main(int argc, char *argv[]) {
                  const char * const * p1;
                  const char * * p2;
2011/2/5-19 [Computer/SW/Languages/C_Cplusplus] UID:54027 Activity:nil
2/4     random C programming/linker fu question.  If I have
        int main() { printf("%s is at this adddr %p\n", "strlen", strlen); }
        and soda's /proc/sys/kernel/randomize_va_space is 2 (eg; on)
        why is strlen (or any other libc fn) at the same address every time?
        \_ I don't pretend to actually know the right answer to this, but
           could it have something to do with shared libraries?
2010/2/12-3/9 [Computer/SW/Languages/C_Cplusplus] UID:53708 Activity:nil
2/12    I need a way to make a really big C++ executable (~200MBs) that does
        nothing.  No static initialization either.  Any ideas?
        \_ static link in lots of libraries?
        \_ #define a   i=0; i=0; i=0; i=0; i=0; i=0; i=0; i=0; i=0; i=0;
           #define b   a a a a a a a a a a
           #define c   b b b b b b b b b b
2009/9/28-10/8 [Computer/SW/Languages/C_Cplusplus] UID:53409 Activity:nil
        Java is #1!!! Followed by C, PHP, C++, Visual Basic, Perl,
        C#, Python, Javascript, then finally Ruby. The good news is
        Pascal is going waaaay back up!
        \_ C is still more popular than C++?  I feel much better about myself
2009/8/7-14 [Computer/SW/Languages/C_Cplusplus, Computer/SW/Languages/Java] UID:53252 Activity:high
8/6     In C one can do "typedef int my_index_t;".  What's the equivalent in
        C#?  Thanks.
        \_ C#? Are you serious? Is this what the class of 2009 learn?
           \_ No.  I have to learn .NET code at work.  I am Class of '93.
           \_ python is what 2009 learns, see the motd thread about recent
              cal courses and languages
2009/7/21-24 [Computer/SW/Languages/Java] UID:53168 Activity:moderate
7/20    For those who care btw, it looks like eclipse is now A Standard Tool
        at UCB ugrad cs, probably replaced emacs.  Furthermore, people get
        angry at seeing Makefiles, (since eclispe takes care of that).  I
        guess it's just a sign of the times.
        \_ The more people at my work use eclipse the less the code is
           managable in emacs.  I'm not sure which application's fault
2013/5/1-18 [Computer/SW/Languages/Java, Computer/Theory] UID:54669 Activity:nil
5/1     What's the difference between CS and Computer Engineering?
        \_ One is science and the other is engineering.
        \_ From
           'A folkloric quotation ... states that "computer science is no more
           about computers than astronomy is about telescopes."  The design
2013/3/5-26 [Computer/SW/Languages/Java] UID:54618 Activity:nil
3/5     Three emergency Java updates in a month. Why do I have a feeling
        that the third one won't be the last one?
        \_ Bingo!
2012/12/18-2013/1/24 [Computer/SW/Languages/Perl] UID:54561 Activity:nil
12/18   Happy 25th birthday Perl, and FUCK YOU Larry Wall for fucking up
        the computer science formalism that sets back compilers development
        back for at least a decade:
        \_ I tried to learn Perl but was scared away by it.  Maybe scripting
           lanauages have to be like that in order to work well?
2012/12/4-18 [Computer/SW/Languages/Java] UID:54544 Activity:nil
12/4    Holy cow, everyone around me in Silicon Valley is way beyond
        middle class according to Chinni's definition:
        \_ Let's set our goals higher:
           \_ How about this one?
2012/10/29-12/4 [Science/Disaster, Computer/SW/Languages/Java, Politics/Domestic/President/Bush] UID:54516 Activity:nil
10/29   Go Away Sandy.
        \_ Sorry, Coursera is performing preventive maintenance for this
           class site ahead of Hurricane Sandy. Please check back in 15 minutes.
           class site ahead of Hurricane Sandy. Please check back in 15
        \_ Bitch.
Cache (8192 bytes)
A Brief, Incomplete, and Mostly Wrong History of Programming Languages 1801 - Joseph Marie Jacquard uses punch cards to instruct a loom to weave "hello, world" into a tapestry. Redditers of the time are not impressed due to the lack of tail call recursion, concurrency, or proper capitalization. She is hampered in her efforts by the minor inconvenience that she doesn't have any actual computers to run her code. Enterprise architects will later relearn her techniques in order to program in UML 1936 - Alan Turing invents every programming language that will ever be but is shanghaied by British Intelligence to be 007 before he can patent them. His lambda calculus is ignored because it is insufficiently C-like. This criticism occurs in spite of the fact that C has not yet been invented. Engineers do this in order to avoid the tabs vs spaces debate. It is a syntax error to write FORTRAN while not wearing a blue tie. Years later, in a misguided and sexist retaliation against Adm. Hopper's COBOL work, Ruby conferences frequently feature misogynistic material. Their work leads to a series of "Lambda the Ultimate" papers culminating in "Lambda the Ultimate Kitchen Utensil." This paper becomes the basis for a long running, but ultimately unsuccessful run of late night infomercials. Lambdas are relegated to relative obscurity until Java makes them popular by not having them. Critics immediately denounce Pascal because it uses "x := x + y" syntax instead of the more familiar C-like "x = x + y". This criticism happens in spite of the fact that C has not yet been invented. Not satisfied with the number of deaths and permanent maimings from that invention he invents C and Unix. His goal is to create a language with the intelligence of a two year old. He proves he has reached his goal by showing a Prolog session that says "No." When asked for a formal semantics of the formal semantics Milner's head explodes. Other well known languages in the ML family include OCaml, F#, and Visual Basic. When asked what that means he replies, "Smalltalk programs are just objects." When asked what objects are made of he replies, "objects." When asked again he says "look, it's all objects all the way down. The resulting language is so complex that programs must be sent to the future to be compiled by the Skynet artificial intelligence. Skynet's motives for performing the service remain unclear but spokespeople from the future say "there is nothing to be concerned about, baby," in an Austrian accented monotones. There is some speculation that Skynet is nothing more than a pretentious buffer overrun. Upon waking Larry Wall decides that the string of characters on Larry Wall's monitor isn't random but an example program in a programming language that God wants His prophet, Larry Wall, to design. Haskell gets some resistance due to the complexity of using monads to control side effects. Wadler tries to appease critics by explaining that "a monad is a monoid in the category of endofunctors, what's the problem?" He returns with a large cranial scar, invents Python, is declared Dictator for Life by legions of followers, and announces to the world that "There Is Only One Way to Do It." The language is later renamed Ruby on Rails by its real inventor, David Heinemeier Hansson. The bit about Matsumoto inventing a language called Ruby never happened and better be removed in the next revision of this article - DHH . Later, in an effort to cash in on the popularity of Java the language is renamed JavaScript. Later still, in an effort to cash in on the popularity of skin diseases the language is renamed ECMAScript. Java is a relatively verbose, garbage collected, class based, statically typed, single dispatch, object oriented language with single implementation inheritance and multiple interface inheritance. C# is a relatively verbose, garbage collected, class based, statically typed, single dispatch, object oriented language with single implementation inheritance and multiple interface inheritance. He creates Scala, a language that unifies constructs from both object oriented and functional languages. This pisses off both groups and each promptly declares jihad. Footnotes 1 Fortunately for computer science the supply of curly braces and angle brackets remains high. Objective C is nice but it's not considered an influential language. It didn't have anything that could inspire a new language designer, because in the end its object model is just a light smalltalk layer over C I'd say, it didn't make "History". Sorry it wasn't enlightening which I thought it would be. And this page of yours constantly contacted and donwloaded MB's of data from s3. or Amazon or whatever, eating up my precious EDGE quota. Don't forget: 1968: Chuck Moore gets a sweet gig at the National Radio Astronomy Observatory. Realising his poor hygiene and complete inability to speak any human language would inevitably lead to unemployment, he invents Forth, a language interpreter with no features at all and even less syntax than Lisp, in which he rewrites all the observatory's software in a week so that it runs ten times as fast and is totally unmaintainable by anyone but him. Geeks surprise him by taking the language and running with it, making N squared incompatible implementations where N = the number of users. They do this because Star Trek: The Next Generation is still ten years in the future and nobody has invented the Klingon language yet. PHP: Began as a simple way to include a few elements in a web page. Syntax slowly evolved using a sophisticated voting system by the masses and also tacking features on in a way described as "willy nilly". Later PERL developers flocked to the PHP, dissatisfied with the complexity of PERL. They solved this problem by adding millions of functions that all followed different naming conventions and did not always do what the name suggested. Objects were introduced late in the game but are highly unused because there are functions that'll do just about anything in PHP. What about this one: 1993 - Roberto Ierusalimschy invents Lua, a very powerfull programmer repelent. He mixes all the things programmers hate: simplicity, indexes starting at 1, not object oriented, "=" means "not equal", avoids bloatware, etc. I think we should punish the Smalltalk guy for inventing an inferior and disturbing paradigm. We should also punish Stroustrup and Gosling for popularizing it. Because of them, millions of programmers have suffered and thousands have killed themselves. And Pascal, which was mentioned, was written as a joke until someone decided to implement it on the PC. And hey, if you can't find something funny to say about ADA, you're not a real comedian. No where's my old book on programming languages, the one with the Tower of Babel on it? I see no inaccuracies whatsoever in this excellent and perspicacious history. I hereby declare it a Reliable Source and will just be off to Wikipedia to add every word. The comment on PHP is lacking the beginning: In 1994, a guy named Rasmus Lerdorf, who hates programming, printed out an HTML page and shook the printout so hard that pieces of it fell off (this is known as the "shaken page syndrome"). He glued those pieces back and typed the result into the computer. Previously mentioned you missed Forth which has lead many to a Fifth to help forget about it and taking to the Fifth to deny all knowledge. Also, it is of particular celestial importance controlling telescopes and the Sun (Sun monitor is Forth). Sorry everyone for my comment maligning Objective C I used sour milk in my cereal and couldn't think straight after that. And lastly, what about HTML, about which I like to say: it's not "what you see is what you get (WYSIWYG)," it's "what you get is what you deserve!" If you haven't seen it yet, Dick Gabriel and Guy Steele have a talk called "50 in 50", where they discuss 50 programming languages in 50 minutes. I think they originally wrote it for the History of Programming Languages conference, but they've since done it at OOPSLA and JAOO. Anonymous wrote: > Objective C is nice but it's > not considered an influential > language. Unless you con...