Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Which programming languages does /prog/ like?

Name: Anonymous 2013-06-26 18:49

the least pig disgusting language you can think of?

Name: Anonymous 2013-06-26 18:49

(or the least jewish)

Name: Anonymous 2013-06-26 18:51

Or the most Jewish!

I like Haskell and Lisp, for their inherent superiority to gentile bullshit like C or Ada, as a product of the Chosen People.

My own status as gentile notwithstanding.

Name: Anonymous 2013-06-26 18:54

My own status as gentile notwithstanding.
You're pathetic.

Name: Anonymous 2013-06-26 18:56

>>3
gentile bullshit like ... Ada
Jean Ichbiah isnt gentile.

And C is based of Algol, which had John McCarthy in designers among other Jews.

Name: Anonymous 2013-06-26 19:00

I love Lisp, because it is least Jewish language based on Lambda Calculus. I would have also voted Forth, but it is based of Combinatory Calculus, which is the evil Jewish version of Lambda Calculus.

Combinatory Calculus is really truly evil, because resulting code is obfuscated (due to absence of variables). Jews hate variables or descriptive names at all.

Name: Anonymous 2013-06-26 19:04

octave.. it can matrix yes matrix no ^^ or machine learning =) also graph ^^ ahheeeee aheeeeeeeeeeee =)

Name: Anonymous 2013-06-26 19:25

>>4
Says the resentful goy, who fools himself thinking he can for some reason avoid the beneficence of the Jewish nation.

>>5
Everything is based off Algol, except APL, FORTRAN and COBOL. Common Lisp inherits from Scheme, which inherits from Algol.

Though it may explain why Nikita made Symta so unreadable; an example of cargo cult on the illegible APL syntax, a typically gentile flawed mode of thinking.

But thanks for the observation, Ada is now in my good list.

Name: Anonymous 2013-06-26 19:34

>>8
Scheme doesn't inherit anything from Algol. Scheme was basically just a more faithful implementation of Lambda Calculus, which Steely admitted himself in Lambda Papers.

Name: Anonymous 2013-06-26 19:36

>>9
Scheme doesn't inherit anything from Algol
besides retarded naming scheme and begin macro. "begin" what? Jews know...

Name: Anonymous 2013-06-26 19:49

>>9
Lexical scoping and block structure was introduced to the programming world by Algol, though surely based on the abstract words of mathematics such as the one you cite. It is said so by one of the creators of Scheme, in http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-10.html#%_idx_628.

Name: Anonymous 2013-06-26 19:52

>>11
Ah, sorry for the saging, didn't mean to sage the thread.

Name: Anonymous 2013-06-26 20:49

I love Scheme and Ruby, because they are beautiful to read and a joy to work with.

Name: Anonymous 2013-06-26 20:50

>>11
Lexical scoping was introduced by Lambda Calculus, which had no dynamic scope at all.

Name: Anonymous 2013-06-26 20:51

Scheme

Name: Anonymous 2013-06-26 20:52

>>13
Here's why one should be wise regarding Ruby:
- Ruby, like most other badly designed languages, does not require variables to be declared, as (let (x 123) ...) in Lisp or int x = 123 in C/C++, leading to ugly scoping problems, where you have to disambiguate visibility at every reference, using $, @ and @@ prefixes. Worser: if you want a variable private to a block, you need to pick an unique variable name, holding the entire symbol table in your head. Ruby introduces new variables by just parsing their assignments, meaning "a = a" or "a = 1 if false; a" wont raise an error. Ruby can't detect even a trivial typo - it will produce a program, which will continue working for hours until it reaches the typo. Local and global scopes are unintuitive. Certain operations (like regular expression operator) create implicit local variables for even more confusion.
- Ruby indulges obfuscation: Ruby has no keyword/optional arguments, so you'll have to use hash parameters as a substitute. This is an idiom that comes from Perl. Ugly, Perl-looking code, like proc {|obj, *args| obj.send(self, *args)} or (0..127).each { |n| p n.chr }, considered beautiful. Another confusing Perl borrowing are postfix `if` and `while` (line = file.readline while line != "needle" if valid line) and quirky variable names (partially due to naive environment design): @instance_var, @@class_var, CONSTANT_VAR, $global_var, :sym, &proc, $~[1], $!, $>, $@, $&, $+, $0, $~, $’, $`, $:, $., $* and $?. If A is [1,2,3] and B is [10,20,30], then A+B is [1,2,3,10,20,30], when you probably wanted [11,22,33]. If `a` and `b` are undefined, then "a = b" produces error, but "a = a" gives `nil`.
- Faulty syntax: Ruby's YACC grammar (ruby-grammar-yacc.bnf is 900 lines) is bigger than Haskell (HaskellParser.y is 650 lines) and C++ (CxxGrammar.y is 700 lines), and that is a lot, considering that Lisp's YACC file is just about 10 lines. Ruby cant distinguish a method call from an operator: "a +b" can be both "a(+b)" and "a + b" - remove the space to the left of "+" or add a space to the right of "+", and it will be parsed as an addition. Same with "puts s *10", which is parsed as puts(s(*10)). Ruby's expressions terminate by a newline and you have to implicitly state that the expression is not over, using trailing + or \. That makes it easy to make a dumb syntactic mistake by forgetting to continue line. It also encourages putting everything onto a single line, producing messy looking code. A good amount of your code will consist of "begin end begin begin end end..." noise.
- Slow: JIT-compiling implementations exist, but they're still slow and incomplete, due to Ruby's complexity and bad design, which make Ruby difficult to optimize compared to other dynamic languages, like Lisp. For example, Ruby has to accommodate for somebody in another thread changing the definition of a class spontaneously, forcing compiler to be very conservative. Compiler hints, like `int X` from C/C++ or `declare (int X)` from Lisp, arent possible either.
- Ruby's GC is a naive mark-and-sweep implementation, which stores the mark bit directly inside objects, a GC cycle will thus result in all objects being written to, making their memory pages `dirty` and Ruby's speed proportional to the number of allocated objects. Ruby simply was not designed to support hundred thousand objects allocation per second. Unfortunately, that’s exactly what frameworks like Ruby on Rails do. The more objects you allocate, the more time you "lose" at code execution. For instance something as simple as 100.times{ ‘foo’ } allocates 100 string objects, because strings are mutable and therefore each version requires its own copy. A simple Ruby on Rails 'hello world' already uses around 332000 objects.
- OOP: Matz had a bit too much of the "OOP is the light and the way" philosophy in him, in effect Ruby doesn't have stand-alone functions and Ruby's blocks can't be used in exactly the same way as usual closures. Even high-order functions are attached to objects and produce verbose code: "names.map { |name| name.upcase }", instead of simple "map upcase names".
- Non-othogonal: {|bar| bar.foo}, proc {|bar| bar.foo}, lambda {|bar| bar.foo}, def baz(bar) bar.foo end - all copy the same functionality, where Lisp gets along with only `lambda`. Some Ruby's features duplicate each other: print "Hello", puts "Hello",  $stdout<<"Hello", printf "Hello", p "Hello", write "Hello" and putc "Hello" -- all output text to stdout; there is also sprintf, which duplicates functionality of printf and string splicing. begin/do/then/end, {} and `:` also play role in bloating syntax, however, in some cases, precedence issues cause do/end and {} to act differently ({} binds more tightly than a do/end). More bloat comes from || and `or`, which serve the same purpose.
- Ruby as a language supports continuations via callcc keyword. Ruby's callcc is incredibly slow, implemented via stack copying. JRuby and IronRuby don't have continuations at all, and it's quite unlikely they will ever get them. There were also support breaches in mainline Ruby, where Ruby 1.9 has not supported continuations for a while. If you want your code to be portable, I'd suggest not using Ruby.
- Ruby was created "because there was no good scripting language that could handle Japanese text". Today it's mostly Rails hype and no outstanding feature, that makes the language, like the brevity of APL or simplicity and macros of Lisp. "There is some truth in the claim that Ruby doesn’t really give us anything that wasn’t there long ago in Lisp and Smalltalk, but they weren’t bad languages." -- Matthew Huntbach

Name: Anonymous 2013-06-26 21:50

>>14
``Lexical scoping'' is but a static distinction between free and bound variables, as is found in the calculus of First Order Logic predating Church's, coming from such as those of famous Jews and pro-Jews, Wittgenstein or Bertrand Russell.

Name: Anonymous 2013-06-26 22:06

>>17
First Order Logic
Nobody cares about your Set Theory bullshit. Go suck a big Cantor-Frenkel.

Name: Anonymous 2013-06-26 22:12

>>18
Let's both do it after you save that Lisp source file!

Name: Anonymous 2013-06-26 22:25

forth. it has some flaws, but comes quite close to being perfect.

Name: Anonymous 2013-06-26 22:27

>>20
Ruby values functionality over form, while Forth is an art major who loudly complains about `conformist' with his hipster friends in Starbucks.

Name: Anonymous 2013-06-26 22:52

Symta. I made it uber concise. Abusing juxtaposition a lot.

[and more elements follow]: list there are more elements | more yet

Name: Anonymous 2013-06-26 23:36

>>22
Peace, Stud!

Name: Anonymous 2013-06-26 23:37

>>21
I revoke my previous statement. Not! Ha ha ha!

Name: Anonymous 2013-06-26 23:52

Brainfuck takes the cake. It so simple and elegant. Absolutely beautiful.

Name: Anonymous 2013-06-27 0:14

Scheme - GENTILE

Name: [Goldenboy] 2013-06-27 2:07

Name: Anonymous 2013-06-27 11:06

>>26
More uninformed gentile statements, as they typically are.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List