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

Pages: 1-4041-8081-120121-160161-200201-

Bad things about python

Name: Anonymous 2007-02-02 12:05

ITT we list all the bad things about python.

I know it has good points as well but thats not for this thread. thanks.

Name: Anonymous 2007-02-02 12:49

__Python is flawless__

Name: Anonymous 2007-02-02 12:49

Memory usage
OpenSSL support (not really related to the language itself)

Name: Anonymous 2007-02-02 13:10

whitespace as syntax is gay as fuck

Name: Anonymous 2007-02-02 13:32

>>1
- No multiline lambdas or expression def.

- Ifs, loops, etc., and more generally, blocks should be expressions that return the value of the last sentence.

- Closures are limited, not because they internally are, but because when you do x = 2, you immediately create a new reference x, not changing the one from an outer scope. This is a tradeoff; it doesn't happen in JavaScript, but on the other side, Python doesn't have dangerous automatic globals and it doesn't require you to define your variables. Still, I would like to have some kind of "outer scope" resolution operator.

- I would like to have C-like assignment operators and ++ --

- Modules should have been regular namespaces, working just like classes and functions.

- Regular expressions from the re module aren't as good as Perl's. They lack the experimental features.

- The re module needs simplification. You can fix it easily though.

Everything else looks great to me. It's overall my favourite language.

>>4
No. Already discussed. Not gay.

Name: Anonymous 2007-02-03 5:45

>>4
stfu, forced indentation is good.

Name: Anonymous 2007-02-03 7:07

python sucks because the interpreter is written in c

Name: Anonymous 2007-02-03 7:44

>>6
forced anything is for noobs, and I'm not a noob, therefore it sucks, the end.

Name: Anonymous 2007-02-03 7:56

>>8
seconded.

Name: Anonymous 2007-02-03 9:33

>>8
no, you're more likely a little curly-brace loving cunt lacking the mental capacity to accept anything unfamiliar

Name: Anonymous 2007-02-03 10:10

>>10
seconded.

Name: Anonymous 2007-02-03 12:05

>>10
lol.. my primary language is haskell, and ive used lisp a lot as well.

Name: Anonymous 2007-02-03 12:13

>>12
you expect anyone to believe that?

Name: Anonymous 2007-02-03 13:15

>>13
he thinks we will trust his crap as long as he doesn't post some code (the only Lisp code he ever wrote was Hello, world)

Name: Anonymous 2007-02-03 15:47

>>13
>>14
both wrong

Name: Anonymous 2007-02-03 20:27

This thread went bonkers fast. Are the things that >>5 really the only problems with Python?

My powerlevel isn't high enough to really understand any of the problems listed, so I'll just continue using Python and learning C at the side.

Name: Anonymous 2007-02-03 23:29

>>16
Make sure you learn memory management well.  Any application where performance is important will require a language that allows directly manipulation of how things are stored and accessed in memory.

Name: Anonymous 2007-02-04 0:45

>>13
>>15
>>14
all the same person, can you believe this guy? hes fuckin nuts

Name: Anonymous 2007-02-04 3:28

>>1
why dont you go back and script some php?
tard.

Name: Anonymous 2007-02-04 13:13

>>16
Personally, I don't like self, __, or things like len() either.

Name: Anonymous 2007-02-04 14:18

>>20
me neither, its evil

>>19
lol @ getting all anoyed about your favorite programming language FAGOT>>20

Name: Anonymous 2007-02-04 15:30

lol @ getting all anoyed about my favorite programming language php
fixd

Name: Anonymous 2007-02-04 18:41

>>1
Attack its weak point, for massive damage.

At least Python has real-time datatype change and is based on functional programming history. Being based on functional programming, the features of the language will also be based on actual features which took actually took place in Lisp. So here's this giant one-line lambda.

Name: Anonymous 2007-02-05 0:45

* poor performance
* Idiot creator
* Maintained by people who are similar to those who maintain PHP
* Wrong mix of features
* Bad operator overloading in the stdlib

Name: Anonymous 2007-02-05 0:50

One word, forced indenting

Name: Anonymous 2007-02-05 1:48

That's two words.

Name: Anonymous 2007-02-05 3:21

>>26

SHUT UP NO IT'S NOT I'M TELLING.

Name: Anonymous 2007-02-05 3:26

>>25
>>27
Not same

Name: Anonymous 2007-02-05 6:39

What i think >>25 was saying was making fun at how in python, "forced indenting" would become one word due to forced indenting. So it's like, satire.

Name: Anonymous 2007-02-05 7:18

>>29
You don't know what 'indenting' means, do you?

Name: Anonymous 2007-02-05 7:23

>>24
I think you hit the nail on the head pretty much exactly, these are the major problems and far outweight any of the (few) good things. imo.

Name: Anonymous 2007-02-05 8:12

>>30
You're an idiot.

def foo(a)
    forced indent

Name: Anonymous 2007-02-05 9:15

>>24
poor performance
Where? It outperforms Perl, Ruby and PHP. It's the fastest in its class, at least out of the popular ones.

idiot creator
Ok, do better.

Maintained by people who are similar to those who maintain PHP
That's why the standard library is so good?

Wrong mix of features
You can say something is missing (multi-fucking-line lambdas), but wrong mix?

Bad operator overloading in the stdlib
You * 0


>>25
No


>>31
gb2/"&)/(#&/()$&"=#)(/="&())#.

More interesting problems were posted in >>5, such as the way scopes are handled in closures or functional and declarative programming features, and what does >>24 have to say? Wah wah wah stupid map bad team lag wah wah wah.

Python is not perfect, but saying stupid things outweight the "few" good things, you're just trolling. And IHBT. Dammit.

Name: Anonymous 2007-02-05 10:25

>>26
"forced" is only one word.
the "indenting" part isn't bad, just the "forced" part.

Name: Anonymous 2007-02-05 10:35

>>33
makes arguments a bit like a primary school child.

Name: Anonymous 2007-02-05 15:09

>>35
>>5 was mine too. I just adapt to the poster I'm replying to.

Name: Anonymous 2007-02-06 0:28

>>34
That's like saying that forced semicolons at the end of lines is bad, or forced braces.

God dammit C++ sucks because it forces you to use [] for arrays and doesn't allow you to use %% in the sense that you cannot say howdy%1% = 1; instead you have to say howdy[1] = 1;

FUCK ALL LANGUAGES EXCEPT PYTHON AND WEEABOOESE

Name: Anonymous 2007-02-06 9:11

That's like saying that forced semicolons at the end of lines is bad, or forced braces.

so true!

Name: Anonymous 2007-02-06 10:27

>>38
The best programming language
is natural language
it's not forced anything

Name: Anonymous 2007-02-06 11:21

>>38
so FALSE

Name: Anonymous 2007-02-06 13:48

>>39
programming languages aren't natural by definition, numbnuts. and in natural languages you still have formal rules to make written text unambiguous, but a fucking peon like you probably couldn't even think that far, you just go about yapping your nonsense with line breaks like you thought it was a haiku

>>40
so the difference between forced indentation and forced statement separators (semicolons) is what, exactly? are you idiots maybe upset because you suddenly can't use your own obnoxious indentation "style"?

Name: Anonymous 2007-02-06 13:56

I have over 65,535 years programming experience writing XBOX-SIZED programs that you couldn't even begin to comprehend with 100% of your brains. I wrote the first ANSI C compiler when I was -12 years old, using ANSI C.

You should just accept everything I say, I don't HAVE to give any reasons for my arguments because I am GUIDO ROSS.

Name: Anonymous 2007-02-06 13:56

so the difference between forced indentation and forced statement separators (semicolons) is what, exactly?

No do/while loops and a hamstrung lambda.

I rarely use lambda, but I miss do/while...

Name: Anonymous 2007-02-06 14:07

>>40
You seem to like C, but I can't help but notice that you did not declare the value of FALSE. That would result in some pretty bad errors...

tl;dr version: #define FALSE 0

Name: Anonymous 2007-02-06 14:12

>>43
who cares for multiline lambdas if you can just use def, and are you sure the lack of do while is because of the off-side rule?

Name: Anonymous 2007-02-06 14:20

 
 <code>
 for (AppleJuice juice : aj) {
       Person moot = new Person();
 
       while (juice.content != 0) {
           moot.drink(new Glass(juice.getJuice(
                   (new MesureMent(15)).setMesure("cl"))));
       }
  }
 </code>

Name: Anonymous 2007-02-06 14:24

although educating themselves is probably above the abilities of the pigs in this thread, here is a wikipedia article:
http://en.wikipedia.org/wiki/Python_syntax_and_semantics

Name: Anonymous 2007-02-06 15:28

One word: Forced-indenting

Name: Anonymous 2007-02-06 15:46

>>48
one word: trying-to-be-clever-but-failing-miserably

Name: Anonymous 2007-02-06 17:11

>>49
forced-indenting is not clever either, it fails, enjoy your:

if ...:
if ...:
if ...: # fucked up indentation, welcome to Hell.

Name: Anonymous 2007-02-06 17:50

>>50
how about you shut your fucking yap hole before I stab you in the eye. here's a clue: YOUR LITTLE BONEHEADED EXCUSE FOR A POST MAKES NO SENSE

Name: Anonymous 2007-02-06 17:53

who cares for multiline lambdas if you can just use def
I like pointless functions about as much as I like pointless classes. Leave boilerplate to C++, kthx.

and are you sure the lack of do while is because of the off-side rule?
How would you implement do/while in python?

Of course, to be fair, do/while is a bit of a hack in braced languages as well.

Name: Anonymous 2007-02-06 18:03

>>43
Forced indentation did not prevent making do..while or repeat..until loops. It's just that Guido thought it unnecessary, or rather, he was being a dick so he challenged people to enumerate places where it'd be clearly better than while in the standard library, then he'd add it.

As for lambda, you can have multiline lambdas BTW:



l = (lambda x, y:
    x + y) #Multiline lambda



The real problem is multi-statement lambdas, which you don't have. The best you can do is implement something like C's comma operator, e.g.



def last(*p):
    return p[-1]



>>45
Tru.dat, the only problem with def is it's not an expression like JavaScript's function; you have to forcefully name it into a temporary variable (which you may reuse). For that purpose, I use underscore:



def _(stuff):
    lol forced indenting wah wah wah
do_stuff(1, 2, 3, _)



>>50
No, you're the fail, and your post did not make sense. Forced indentation is harder to fail than braces, unless you are not used to indenting your code, in which case you suck.

Name: Anonymous 2007-02-06 18:40

he was being a dick so he challenged people to enumerate places where it'd be clearly better than while in the standard library

thing is, you can do the same with a regular loop, adding a conditional break at the end; it just looks less pretty

As for lambda, you can have multiline lambdas BTW
I think what was meant was more complex statements inside a lambda, but, in that case, you should use a nested function, and lambdas are just syntactic sugar anyway

I like pointless functions about as much as I like pointless classes.
I'm sensing you're someone who has no clue

How would you implement do/while in python?
see here: http://www.python.org/dev/peps/pep-0315/


all in all, the best tards like >>50 can come up with is minor quibbling about the syntax, because it requires no brainwork

Name: Anonymous 2007-02-06 18:42

I think what was meant was more complex statements inside a lambda, but, in that case, you should use a nested function, and lambdas are just syntactic sugar anyway

oops, didn't read the rest of >>53 before replying

Name: Anonymous 2007-02-06 20:04

I'm sensing you're someone who has no clue
I like to think I do, but I'm always happy to learn something different. So, tell me how I'm wrong, chum.

see here
Thanks for the link. However, unless I've missed something (I must have):


do:
    <setup code>
while <condition>:
    <loop body>


Is little different from:


<setup code>
while <condition>:
    <loop body>


So, that's just increasing the code, not the reverse. It doesn't solve the problem. Perhaps if you could demonstrate how it'll help with something like:


do {
  print(x);
  print(x%1);
  print(x%2);
  x++;
} while(x >= 5);


Since do/while loops always execute at least once, with python you'd currently get:


print(x)
print(x%1)
print(x%2)
x += x
while x >= 5:
    print(x)
    print(x%1)
    print(x%2)
    x += x


How would the proposed addition help? I'd be much obliged.

Name: Anonymous 2007-02-06 20:06 (sage)

s/x += x/x += 1/

Name: Anonymous 2007-02-06 20:07 (sage)

And while we're at it, replace >= with <=

Ugh.

Name: Anonymous 2007-02-07 0:15

>>37
hahaha

the regex is shit in python btw

Name: Anonymous 2007-02-07 2:58

do:
    print(x)
    print(x%1)
    print(x%2)
    x += x
while x >= 5:
    pass


oh, gee, would you look at this

I like to think I do, but I'm always happy to learn something different. So, tell me how I'm wrong, chum.
no, I think sucking cocks is alright for you after all

Name: Anonymous 2007-02-07 3:33

or:

while True:
    print(x)
    print(x%1)
    print(x%2)
    x += x
    if x >= 5: break

Name: Anonymous 2007-02-07 3:39

>>60
That is... ugly. I'm glad to see people are thinking twice on the mailing lists.

no, I think, etc
No explanation? Just an insult? Grow up.

Name: Anonymous 2007-02-07 4:27

>>62
no use explaining anything to a n00b

Name: Anonymous 2007-02-07 6:01

>>54
thing is, you can do the same with a regular loop, adding a conditional break at the end; it just looks less pretty
Sure, Guido challenged people to find enough places where do..while would make things look better.


For a do..while loop, I'd suggest:

"do" INDENT statement+ DEDENT "while" expression EOL

Name: Anonymous 2007-02-07 6:42 (sage)

>>63
Typical teenage fanboy.

Name: Anonymous 2007-02-07 7:40

>>62
>>65

same person

yea, and, you know, the insults one chooses really say a lot about his own insecurities.

Name: Anonymous 2007-02-07 7:40

>>66
+ does

Name: Anonymous 2007-02-07 7:51

>>67

u gimme kiss-chan

Name: export programmer 2007-02-07 8:02

http://www.amk.ca/python/writing/warts.html

While I think Python has a very elegant design that successfully straddles the fine line between the minimalism of Lisp and the rococo complexities of Perl, it's certainly not perfect. There are various design features that I consider ugly, or at least suboptimal in some way. This essay will examine the most significant problems in Python as I perceive them, assisted by suggestions from the comp.lang.python crowd.

The purpose of this discussion isn't to bash Python, or to second-guess GvR; most of these problems are rather difficult to solve and don't have any obviously correct solution, even if one disregarded backward compatibility. Instead, the goal is simply to demonstrate awareness of Python's flaws, and to ask if they're fixable. One test of whether someone is a good programmer is to ask them to assess the tools they use -- languages, libraries, and operating systems. Someone who cannot perceive flaws or express an opinion about the low and high points of a design is either not accustomed to thinking analytically about the systems they encounter or is blindly partisan in the service of their chosen favorites. Computing, at least in the exploratory fields where I hang out, is more of an art than a science, and inability to critique a design is a serious liability.

Name: Anonymous 2007-02-07 8:13

>>69
Truth. That's why I, despite being the biggest Python fag fanboy, was quick to take this thread seriously in >>5. I want this fixed just exactly because I like Python so much.

Also, 70GET

Name: Anonymous 2007-02-07 10:24

oh yeah, I almost forgot, there is a hidden feature that you can use curly braces as block delimiters in python too! you do it like this:
def fun(): #{
    print 'Hello World'
    ...
#}

Name: Anonymous 2007-02-07 12:39

>>71
Now I've seen everything.

Name: Anonymous 2007-02-07 14:34

Try from __future__ import braces

Name: Anonymous 2007-02-07 14:41

>>69
>>70
gtfo my thread, this is about the BAD things about python.. do you understand that?

>>71
# is a comment.. duh

Name: Anonymous 2007-02-07 14:51

Forced indenting. Thread over.

Name: Anonymous 2007-02-07 15:09

>>75
If that's all that's bad about Python, Python is a great language.

Name: Anonymous 2007-02-07 15:28

>>76
That's more than anything for me to dump this piece of a crappy language. I want to be in control, you aren't by writing in Python, you'll suffer from it and enjoy your IDE modifying your algorithm because it used tabs by mistake instead of spaces.

Name: Anonymous 2007-02-07 15:28

>>73

>>> from __future__ import braces
  File "<stdin>", line 1
SyntaxError: not a chance


ROFLMAO

Name: Anonymous 2007-02-07 15:30

>>77
that's total bullshit and you know it. if you're not using proper identing in any other language, you suck MAJOR cock anyways

wait, no, judging how much braindead code is out there, it's actually very likely that you're an incompetent fucktard

Name: Anonymous 2007-02-07 15:33

>>79
you haven't read my code, I only give the legal rights to the company I work for, that's what the law allows me to do. And I can bend rules whenever I want, if I need to indent differently to be able to format something better, I can do it while you can't, duckfart.

Name: Anonymous 2007-02-07 15:37

>>79 is a prime example of why so many people hate the python community. I too dislike the community, although I think the language is decent.

It's a language, you damned zealot. Get a life and cool down.

Name: Anonymous 2007-02-07 15:40

>>80
>>81
You're both right, languages are tools. If they don't provide you with an efficient solution, change and try something else, Ruby for example.

Name: Anonymous 2007-02-07 15:43

>>80
let me guess, you're some low rank code monkey working for peanuts, know the whopping amount of about two or three languages, one of which is BASIC or somesuch

Name: Anonymous 2007-02-07 15:50

>>82
ruby is awesome, except it's slow as fuck

Name: Anonymous 2007-02-07 15:52

>>83 needs to reread >>81

Stop trolling this thread, kid.

Name: Anonymous 2007-02-07 15:54

>>84
Truth.

Also, lack of unicode, and the regex are half-baked.

Name: Anonymous 2007-02-07 16:02

>>85
I don't see myself telling you to stop posting your pretentious, insular crap in every other thread, so what gives you the right to order me around?

Name: Anonymous 2007-02-07 16:04

>>79
>>80
A bit less name calling please, lets concentrate on tearing python to bits :)

Name: Anonymous 2007-02-07 16:07

>>87
shut up please, you're unwelcomed here, this is not the "I'm new to computars help me programmating pliz"

Name: Anonymous 2007-02-07 16:10

>>88
what is the net amount of meaningful criticisms during this thread so far? zero? a link about shortcomings most of which have been fixed 3 versions ago? some quibbling about dubious features like do while, and the stupid old indentation shtick?

Name: Anonymous 2007-02-07 16:12

>>89
thanks, but no thanks.

Name: Anonymous 2007-02-07 16:24

>>87
Except that I don't. Nor do I typically resort to insulting people because they dare (dare! I say) question my pet language.

Someone earlier was right: you're a rabid fanboy, kid. Get out more.

Name: Anonymous 2007-02-07 16:36

>>92
poor boy, someone questioned your non-existant expertise and your vapid parroting of stupid cliches, and now they won't go away? there, there

Name: Anonymous 2007-02-07 16:54

Name: Anonymous 2007-02-07 16:55

Name: Anonymous 2007-02-07 17:08

>>91
>>92
>>93
>>94
>>95
troll. gb2/b/

Name: Anonymous 2007-02-07 17:12

>>96
so n00bs can go on with their crusade against python?

Name: Anonymous 2007-02-07 17:17

>>33
and C++ with Boost and the STL outperforms Python with more features and more stuff to play with, what was your point again?

>>37
yes, but my C++ program won't break if I put too much spaces before or after a line or a statement, the flow of my applications can't be broken because I want to cut and paste functions when I refactor...

Name: Anonymous 2007-02-07 17:28

>>98
yeah, because c++ is literally flawless and modern IDEs are so primitive they don't take care of tabs for you.

you know what you can do with your c++ supremacy? I'll let you guess

Name: Anonymous 2007-02-07 17:39

100GET in a long fucking thread?

Name: Anonymous 2007-02-07 17:42

101DALMATIONS

Name: Anonymous 2007-02-07 17:42

>>100
yay, more tedious trolling for all, and I mean both pro and anti python

Name: Anonymous 2007-02-07 17:44

>>98
you must be a genius! a lower level language outperforms a higher level language? words fail me.

Name: Anonymous 2007-02-07 17:45

This thread is teh awesome. If anyone EVER tries to start another Python thread, we can just go:

http://dis.4chan.org/read/prog/1170426000
Thread ovar!

Name: Anonymous 2007-02-07 17:52

>>104
yes, so everyone can see how much whining about mandatory indentation versus conventional indentation fails

Name: Anonymous 2007-02-07 17:56

if anyone wants to see guido in person:
http://video.google.com/videoplay?docid=-6459339159268485356

kinda geeky, but iirc english isn't his first language as he's dutch, and the stuff that's written to the mailinglists is very assuring that a lot of tremendously intelligent people have been working and still are to make python a good language

Name: Anonymous 2007-02-07 18:36

>>80
Ooooh you don't give your very precious code to anyone! You're the man! Truly a master programmer! We should listen to you!

Name: Anonymous 2007-02-07 18:42

and C++ with Boost and the STL outperforms Python with more features and more stuff to play with, what was your point again?
C++ doing that is not only clumsy, incredibly verbose, error-prone and absolutely retarded, but it's also worse than having a monkey dance in your intestine. The fact you can hack it to do something that barely resembles what a high-level language should do doesn't make C++ a high-level language.

P.S.: Python has dynamic typing, closures, list comprehensions, generators, eval, etc., and since Python is written in C, C does all that! OMG!

yes, but my C++ program won't break if I put too much spaces before or after a line or a statement
After? Nobody cares for after. And if you put too much space before a line where it shouldn't go, then it should very well fail, because you suck at indenting.

Name: Anonymous 2007-02-07 18:47

>>106
+1 Interesting
Okay, so you may agree or disagree with GvR. You may think he's an indentation fag, or he has become an hero because he forces morons to indent properly. You may think his disdain for functional programming is stupid. You may think he's too Pythonic for his own good, or he's too Pythonic and that's his own good. So you may like or dislike or love or hate his work. But regardless of that, you have to admit he rocks.

Name: Anonymous 2007-02-07 20:09

Is there some way to do "if defined x" in Python that doesn't involve exceptions?

Name: Anonymous 2007-02-08 0:28

One word, the forced indentation of code. Thread over.

Name: Anonymous 2007-02-08 2:26

>>110
there isn't a better way for a reason: if your code requires so, it's not very good. anyway, you can do if 'name' in dir() or in locals() or globals().

>>111
failget

Name: Anonymous 2007-02-08 3:30

>>111
Same troll as in the first posts, and WHBT constantly.

Name: Anonymous 2007-02-08 22:59

there isn't a better way for a reason: if your code requires so, it's not very good.
I realise that, but it's pretty darn hard to avoid it altogether when dealing with Zope3. Components are no fun. :(

Name: Anonymous 2007-02-09 1:32

One word, the forced indentation of code. Thread over.

Name: Anonymous 2007-02-09 3:45 (sage)

One word, the forced indentation of code. Thread over.

Name: Anonymous 2007-02-09 3:55

One word, the forced indentation of code. Thread over.

Name: Anonymous 2007-02-09 3:58 (sage)

One word, the forced indentation of code. Thread over.

Name: Anonymous 2007-02-09 4:56

>>114
Zope sucks

Name: Anonymous 2007-02-09 5:23

One over, the forced code of indentation. Thread word.

Name: Anonymous 2007-02-09 6:44

>>120
one of my eyes just popped out

Name: Anonymous 2007-02-09 8:18

One Thread, the indentation forced of. code over word.

Name: Anonymous 2007-02-10 13:25

bump etic thread

Name: Anonymous 2007-02-10 13:40

One word, the forced indentation of code. Thread over.

Name: Anonymous 2007-02-10 14:52

>>123
bump erotic thread

Name: Anonymous 2007-02-10 17:17

>>106
I just watched the whole vid and near the end in the questions section, Guido says there'll probably be syntax so that you can assign to a variable in an outer scope. At this point, I instantly came all over my keyboard, mouse, table, and chair. It's as if I had been wanking for a year holding up all this time, then suddenly released a load of George Zimmer proportions.

Name: Anonymous 2007-02-10 17:24

>>126
rofl, what a nerd

Name: Anonymous 2007-02-10 17:31

>>127
hello, I'll be proving how you fail, using this categorical syllogism:
* > null
you == null
nerd > you

Name: Anonymous 2007-02-10 17:34

>>126
assign variable to outer scope? what a bunch of crap, just rename your stupid variables if their names clash, of course if you only use "a, b, c, d" you'll have a problem, shesh...

Name: Anonymous 2007-02-10 18:32

>>126
>>128

same person

Name: Anonymous 2007-02-10 19:11

>>127
>>130

same person

don't lump me in with >>126 because you fail

Name: Anonymous 2007-02-10 20:14

>>129
Uh... you kinda fail at realizing what this allows you to. I'm talking about closures. It's not that names clash, it's that I want to use outer scopes variables, and right now in Python you cannot assign them to new values because that would create a new inner variable.

Name: Anonymous 2007-02-10 23:05

>>126
>>127
>>130
>>131
forced indentation of code.

Name: Anonymous 2007-02-11 4:27

>>132
you want to use outer scopes variables from a closure? Lisp already did that 20 years ago.

Name: Anonymous 2007-02-11 6:07

One word, the forced indentation of code. Thread over. Thread over. Thread over. Thread over. Thread over. Thread over. Thread over. Thread over. Thread over. Thread over. Thread over.

Name: Anonymous 2007-02-11 6:16

>>134
lisp has shitty syntax.
but then again, so does python.

Name: Anonymous 2007-02-11 7:38

>>136
sez who?

Name: Anonymous 2007-02-11 8:06

>>137
One word, the forced indentation of code. Thread over.

Name: Anonymous 2007-02-11 9:49

this thread is immortal like duncan mcleod. fuck the haters, python rules!

Name: Anonymous 2007-02-11 10:40

>>139
One word, the forced indentation of code. Thread over.

Name: Anonymous 2007-02-12 11:50

>>136
lisp doesn HAEV syntax

Name: Anonymous 2007-02-12 14:16

>>139
no, Lisp rules, Python is already dead...

Name: Anonymous 2007-02-12 14:19

>>142
seconded!

Name: Anonymous 2007-02-12 16:29

>>142
>>143
Absolutely in no way thirded. Please try to improve your definition of "dead", lest thou wishes to confuse thy peers.

Name: Anonymous 2007-02-12 16:46

>>144
don't make me laugh, you're not one of my "peers", you could be my slave in another dimension but all you are able to do is click "Next > Next > Next" on template wizards for C++ projects, you're nothing.

Name: Anonymous 2007-02-12 16:47

>>144
One word, the forced indentation of code. Thread over.

Name: Anonymous 2007-02-13 3:55

>>134
Python is not that old, but it already does that. You can read outer scope objects and modify mutable ones. The problem is if you assign their symbols like i = 1 (not just modify them like i.mutablemethod() or i[index] = stuff), it will create a new symbol in the local scope, because symbol creation is automatic, and this was a tradeoff between this and what JavaScript and Perl do (automatic globals - pure shit). Currently, if you really need to assign to a symbol like that, you can, but you have to wrap it into a list. This will introduce a way to assign to a symbol in an outer scope.

>>136
Lisp has shitty syntax, Python's syntax is fine except for a few things. However, I think Lisp has superior features. The reason why I do Python is that I think the better syntax is worth the loss of features given what's left of Lisp is still good and flexible enough.

>>141
Oh yes it does.

>>142
False

Name: Anonymous 2007-02-14 15:25

>>147
sounds like an utterly terrible bad decision

Name: Anonymous 2007-02-14 15:56

>>147
shitty syntax for you, best for me, you're a noob, I use Lisp.

Name: Anonymous 2007-02-14 16:31

>>148
I'll take it over automatic globals. Forget to use var or my and poof, welcome to outermost scope.

>>149
((not (can (be 'serious))) you)

Name: Anonymous 2007-02-14 16:31

>>149
lisp isnt the best, but thats only because you cannot put languages on a linear scale.
if you could then yeah.

Name: Anonymous 2007-02-14 16:54

>>150
Lisp syntax is so easy and natural that anybody can see that your fake Lisp program is not valid, that's why I love Lisp.

Name: Anonymous 2007-02-14 16:55

>>151
thanks for the computar lesson, I write C++, Lisp and Lua on a daily basis for my job and I needed you to remind me that functional languages are different...

Name: Anonymous 2007-02-15 7:29

>>153
um "shitty syntax for you, best for me, you're a noob, I use Lisp."
you said it was the best... I was practically agreeing with you.

Name: Anonymous 2007-02-16 8:57

Name: Anonymous 2007-02-16 9:10

>>155
lol what?
I dont get the reference to perl

Name: Anonymous 2007-02-16 9:50

>>156
you've obviously never used perl.

Name: Anonymous 2007-02-16 12:15

>>157
god what is it with you /prog/ers,
yes. I have used perl.

can you tell me the reference now please?
(unless you dont get it either which would explain your random false statements)

Name: Anonymous 2007-02-16 12:26

>>158
Perl fucking sucks.  So does Lisp, that's the reference.

Name: Anonymous 2007-02-16 12:32 (sage)

>>158
perl is generally perceived as an easy language to quickly hack shit up in, with the results being barely readable.

kill yourself.

Name: Anonymous 2007-02-16 14:54

>>159
>>160
If you can't write good code whatever the language, you don't deserve to use a keyboard. Step away from your keyboards, morons!

Name: Anonymous 2007-02-16 15:34 (sage)

>>161
'perceived', dipshit. and the comic specifically mentions 'hacking together'.

you're a fucking retard.

Name: Anonymous 2007-02-16 15:42

>>162
yeah, and Windows is generally "perceived" as a good operating system and Bush as a good president. Don't use that fucking word if you don't know what it means. As for the "fucking retard" expression, YHBT, now go back to high-school where you belong.

Name: Anonymous 2007-02-16 16:14

NO U

Name: Anonymous 2007-02-16 16:24

>>164
seconded.

Name: Anonymous 2007-02-17 9:17

OP here...
em...

so Python Yes or No?

Name: Anonymous 2007-02-17 9:30

>>166
Python is just "ok" for some small projects, you have to switch to C++ if you want efficiency and more flexible objects with the template system, sorry.

Name: Anonymous 2007-02-17 9:54

>>166
"Yes". As long as you understand:
1. The right tool goes for the right job. Python is the right tool for some jobs, and it's not the right tool for some others.
2. Nothing is perfect. Python has caveats, Ruby has caveats, Lisp has caveats, etc. The fact we criticize some misfeatures of Python doesn't make it suck.

>>167
CFLAGS JUST KICKED IN, YO!

Name: Anonymous 2007-02-17 10:06

>>168
lisp doesnt have caveats :)

Name: Anonymous 2007-02-17 10:39

>>168
2. Nothing is perfect.

I take it you haven't used Haskell?

Name: Anonymous 2007-02-17 11:11

>>170
variable number of arguments in haskell requires lots of fucking about with the type system, thread over.

Name: Anonymous 2007-02-17 12:40

>>171
One word.  Variable number of arguments.  Thread over.

Also, solution looking for a problem -- if you need varargs, you are probably doing something wrong (or implementing some sprintf-like thing).

Name: Anonymous 2007-02-17 12:44

>>172
>> Also, solution looking for a problem -- if you need varargs, you are probably doing something wrong (or implementing some sprintf-like thing).
so uh... your point is?

Name: Anonymous 2007-02-17 12:47

>>173
Generally you don't need varargs, and thus >>171's point (assuming he made one) is Robert Bopkins.

Name: Anonymous 2007-02-17 14:03

variable length argument lists; yeah Haskell doesn't like them much because of its currying behaviour. However you can just pass a list, you pussy.

Name: Anonymous 2007-02-17 14:07

THIS IS SPARTA WE ARE GOING TO DINE IN HELL

Name: Anonymous 2007-02-17 14:56

>>174
Generally you need variable number of arguments to simplify interfaces intelligently, by using default values for the rarest options.

Name: Anonymous 2007-02-17 16:00

>>177
Nah, you don't actually *NEED* to have functions with variable number of argumets. It makes sense to have, and it's nice, but Haskell has never cared about either of those.

Name: Anonymous 2007-02-17 16:38

>>178
Haskell is kind of the retarded kid of functional languages, the one that tries too hard but is useless and boring.

Name: Anonymous 2007-02-17 19:56

>>179
haha so true.

Name: Anonymous 2007-02-24 14:33 ID:G2g/ZtQ9

lo.

Name: Anonymous 2007-04-19 4:05 ID:lEZQYvCv

this epicer thread

Name: Anonymous 2007-04-19 7:31 ID:tjz9ehiS

woah, this threads still alive wow!
I started this thread a looong time ago, and from it spawned the first? meme on /prog/

its great! :D reminds me of chapter two of SICP

Name: Anonymous 2007-04-19 8:55 ID:fh3R3qJY

░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░████████████░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░████████████████░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░████████████████████░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░████████████████████░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░████░░██████░░██████░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░██░░██░░██░░██░░████░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░██░░██░░██░░██░░████░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░██░░▒▒▒▒▒▒▒▒██░░████░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░██▒▒▒▒▒▒▒▒▒▒▒▒▒▒████░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░██▒▒▒▒▒▒▒▒▒▒▒▒▒▒██████░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░██░░▒▒▒▒▒▒▒▒░░░░██████░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░██░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░████░░░░░░░░░░░░░░░░██████░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░██░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░████░░░░░░░░░░░░░░░░░░██████████░░░░░░░░░░░░
░░░░░░░░░░░░░░██████░░░░░░░░░░░░░░░░░░░░██████████░░░░░░░░░░
░░░░░░░░░░░░░░████░░░░░░░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░
░░░░░░░░░░░░░░████░░░░░░░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░
░░░░░░░░░░░░████░░░░░░░░░░░░░░░░░░░░░░░░░░██████████░░░░░░░░
░░░░░░░░░░░░████░░░░░░░░░░░░░░░░░░░░░░░░░░██████████░░░░░░░░
░░░░░░░░░░██████░░░░░░░░░░░░░░░░░░░░░░░░░░██████████░░░░░░░░
░░░░░░░░░░██████░░░░░░░░░░░░░░░░░░░░░░░░░░██████████░░░░░░░░
░░░░░░░░░░▒▒▒▒██░░░░░░░░░░░░░░░░░░░░░░░░░░██████████░░░░░░░░
░░░░░░░░░░▒▒▒▒▒▒██░░░░░░░░░░░░░░░░░░░░░░▒▒████████▒▒░░░░░░░░
░░░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒██░░░░░░░░░░░░░░░░░░░░▒▒▒▒████▒▒▒▒░░░░░░░░
░░░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒████░░░░░░░░░░░░░░░░░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░
░░░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒████░░░░░░░░░░░░░░██▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░
░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░░░░░░░░██▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░
░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░░██████▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░
░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒████████████████▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░░░
░░░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒██████████████████▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░
░░░░░░░░░░░░▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░░░░░░██▒▒▒▒▒▒▒▒░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░██░░░░░░░░░░░░░░░░░░░░░░██░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░

Name: Anonymous 2007-04-19 18:47 ID:v9H6k3FZ

>>183
Is that even relevant to the topic or Is this just your way of saying "I've read SICP" ?

Name: Anonymous 2007-04-19 21:41 ID:5FtMOuF1

But is it Touring complete?

Name: Anonymous 2007-04-20 6:52 ID:8zZVcUGR

>>186
SICP? It isn't, but parenthesis are.

Name: Anonymous 2007-04-20 9:15 ID:ig2OQtSI

>>186
Ducks are Touring complete. They move across a (theoretically) infinite river in either direction. They have memory. In each step, they can catch fish, take a dump, or quack.

Name: Anonymous 2007-06-22 9:14 ID:1JNfRxL/

Epic bump of epic proportions. Here you can observe the origins of the `Forced Indentation' meme which I invented in its natural habitat.

Name: Anonymous 2007-06-22 9:14 ID:Heaven

>>111
for reference

Name: Anonymous 2007-06-22 11:05 ID:brB1ZFgO

>>175 However you can just pass a list, you pussy.
HAHA, GOOD LUCK WITH PASSING A LIST WITH MANY POSSIBLE TYPES (LIKE PRINTF) AS PARAMETER ON HASKELL

ONE WORD, THE FORCED METAPROGRAMMING OF CODE, THREAD OVER

Name: Anonymous 2007-06-22 11:53 ID:Heaven

>>> parse("2 + 2")
['eval_input', ['testlist', ['test', ['and_test', ['not_test', ['comparison',
 ['expr', ['xor_expr', ['and_expr', ['shift_expr', ['arith_expr', ['term',
  ['factor', ['power', ['atom', [2, '2']]]]], [14, '+'], ['term', ['factor',
   ['power', ['atom', [2, '2']]]]]]]]]]]]]]], [4, ''], [0, '']]

ONE WORD, THE FORCED NON METAPROGRAMMING OF CODE, THREAD OVER

Name: Anonymous 2007-06-22 12:49 ID:huiZJRtn

>>189
.... I invented it -_-

Name: Anonymous 2007-06-22 19:40 ID:Heaven

>>37
because brackets for array access and semicolons for statement terminators actually make sense and are unambiguous, whereas with whitespace it's hard to see something that isn't there.

Name: Anonymous 2008-12-12 7:12

how do I get ID:Heaven?

Name: Anonymous 2008-12-12 8:05

We haven't had an ID for any post since 2007 so nobody is getting any ID now.

Name: Anonymous 2008-12-12 8:57

>>195
Go to 4-ch and stay there

Name: Anonymous 2008-12-12 10:11

WHY DOES EVERYONE SAY FORCED INDENTATION IS BAD IT'S NOT, LIKE YOU'RE REALLY GOING TO NOT INDENT YOUR CODE ANYWAYS.

ALSO ;

def five(): return 5
print five();print"It's five"

Name: EXPERT /PROG/ HISTORIAN 2008-12-12 10:17

For extra points, find and bump the sources of the other popular /prog/ memes. I'm particularly interested in the first instance of `/prog/'.

PS. I kind of miss IDs.

Name: Anonymous 2008-12-12 10:18

>>199
PS. I kind of miss IDs.
Me too :(

Name: Anonymous 2008-12-12 10:44

>>196
>>197
YHBT xD

Name: Anonymous 2008-12-12 10:50

>>199
I wish to strangle whoever invented that shitty ``meme.''

Name: Anonymous 2008-12-12 11:47

I'm particularly interested in the first instance of hax my anus.

Name: Anonymous 2008-12-12 11:49

>>202
I wish to strangle whoever invented that shitty ``meme.''

Name: Anonymous 2008-12-12 12:24

python.com and python,net are too similar

Name: Anonymous 2008-12-12 12:24

>>205
python.org rather

Name: Anonymous 2008-12-12 13:56

Name: Anonymous 2008-12-12 16:29

>>206
pythong.org rather

Name: Anonymous 2008-12-12 16:35

A classic ruined by newfags :(

Name: Anonymous 2008-12-12 16:45

>>> def _(a=[]):
...  a += [len(a),]
...  return a
...
>>> ((_()))
[0]
>>> ((_()))
[0, 1]
>>> ((_()))
[0, 1, 2]

Name: Anonymous 2008-12-12 16:56

>>210
wut

Name: Anonymous 2008-12-12 17:15

>>209
newfags
Hey!

Name: Anonymous 2008-12-12 17:17

one word

the forced indentation of repeated memes

Name: Anonymous 2008-12-12 17:27

Name: Anonymous 2008-12-12 17:53

>>214
#1) you can't even use IRC well; #2) you can't tab-complete; #3) you can't google - this implies yer too busy jerking off and sucking soda or video-gaming. Die well, kid

Name: Anonymous 2008-12-12 19:03

>>214
That's [spoiler][m]/prog/[/m][/spoiler], not [spoiler]/prog/[/spoiler].

Name: Anonymous 2008-12-12 19:16

/prog/ has to be the only board on 4chan that was actually worse in early 2007.

Name: Anonymous 2008-12-12 19:21

>>217
It's funny because it's true.

Name: Anonymous 2009-03-06 15:09


Forced memes is gay Speak for I   in cat TMPFILE!

Name: Anonymous 2009-08-16 2:02

Lain.

Name: Anonymous 2009-08-16 2:21

Lain.

Name: Anonymous 2009-08-16 2:26

Lain.

Name: Anonymous 2009-08-16 2:50

Lain.

Name: Anonymous 2009-08-16 3:00

Lain.

Name: Anonymous 2009-08-16 3:06

Lain.

Name: Anonymous 2009-08-16 3:23

Lain.

Name: Anonymous 2009-08-16 3:25

Lain.

Name: Anonymous 2009-08-16 3:41

Lain.

Name: Anonymous 2009-08-16 4:23

Lain.

Name: Anonymous 2009-08-16 4:23

Lain.

Name: Anonymous 2009-08-16 4:28

Lain.

Name: Anonymous 2009-08-16 4:41

Lain.

Name: Anonymous 2009-08-16 22:21

Lain.

Name: Anonymous 2010-11-27 13:15

Name: Sgt.Kabu㷔kimanĥ 2012-05-28 22:12

Bringing /prog/ back to its people
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy

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