Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Jonny 290
May 5, 2005



[ASK] me about OS/2 Warp

Notorious b.s.d. posted:

all scripting languages are bad

the only question is whether you are content to live with that badness

whats a scripting language anyways

Adbot
ADBOT LOVES YOU

Socracheese
Oct 20, 2008

( BOSS enters office)
BOSS: I need you to organize this data and output it to a graph
CODER: okay but this is a lot of data, this will take a while
( montage of CODER typing at keyboard for 6 minutes, jerking off, sleeping )

MeruFM
Jul 27, 2010
can build a string without worrying about NUL terminator

MeruFM
Jul 27, 2010
a scripting language that is

java is a scripting language, a bad one

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

MeruFM posted:

i've started learning GPGPU with C++ because it seems to be the most supported language. Maybe it's my poo poo-stained glasses but C++ is pretty lovely between the large amount of C style functions, macros, and memory management of course made worse now that there's 2 discrete memory spaces to manage, one of which is basically a black box

if you've got the budget and time, the next iteration of CUDA will have unified memory

if not, look to stuff like the thrust library. if you're lucky that'll be enough to hide the worst bits

MeruFM
Jul 27, 2010

coffeetable posted:

if you've got the budget and time, the next iteration of CUDA will have unified memory

if not, look to stuff like the thrust library. if you're lucky that'll be enough to hide the worst bits

Cool

It's kinda sad and cynical of me, that after looking at the example slide, I can only think that everyone's just going to be: "Oh, memory problems? Add some more 'cudaSynchronize' and see if it works"

spongeh
Mar 22, 2009

BREADAGRAM OF PROTECTION

coffeetable posted:

if you've got the budget and time, the next iteration of CUDA will have unified memory

how does this work w/ current pc architectures. is it just doing the copying for you? will you essentially get a free speedup once some of the console architecture stuff makes it to pc?

Notorious b.s.d.
Jan 25, 2003

by Reene

Jonny 290 posted:

whats a scripting language anyways

you know it when you see it, like obscenity. here are some tips on how to identify one, with the languages sharing each trait in parens. i am not 100% on all of these so i may have missed some obvious ones

  • design determined by implementation details of naive interpreter, instead of a language spec (perl, php, python, ruby, tcl, vb)

  • no compilation stage (php, python, ruby, tcl, vb)

  • broken garbage collection (perl, php, python, ruby)

  • broken threading (php, python, ruby)

gonadic io
Feb 16, 2011

>>=

Notorious b.s.d. posted:

you know it when you see it, like obscenity. here are some tips on how to identify one, with the languages sharing each trait in parens. i am not 100% on all of these so i may have missed some obvious ones

  • design determined by implementation details of naive interpreter, instead of a language spec (perl, php, python, ruby, tcl, vb)

  • no compilation stage (php, python, ruby, tcl, vb)

  • broken garbage collection (perl, php, python, ruby)

  • broken threading (php, python, ruby)

Tiny Bug Child
Sep 11, 2004

Avoid Symmetry, Allow Complexity, Introduce Terror
there's nothing "broken" about php's garbage collection. and php has no threading support so you can't really call it "broken" either. the other two things are good

PleasingFungus
Oct 10, 2012
idiot asshole bitch who should fuck off

Cybernetic Vermin posted:

it is telling that python might be the sanest of the p:s and they deprecated half the language for the sake of vision~~ and purity~~~~

ib4 python 2 outlives 3

python 2 is garbage and I can't wait for it to die

it's almost liveable until you have to do anything with unicode, but in the end, you always end up having to deal with unicode

then: lol

PleasingFungus
Oct 10, 2012
idiot asshole bitch who should fuck off
today I found a line of code ending "#DEBUG TODO remove before putting into production".

it disabled 90% of the functionality of the method it was in, and had been deployed to production sometime in late september.

coding is hard.

on the plus side, it made closing out the associated bug very easy.

e: this is probably more of a cjs post but I'm putting it in the PL thread just to mix things up a little. we'll see how it goes.

Brain Candy
May 18, 2006

PleasingFungus posted:

python 2 is garbage and I can't wait for it to die

it's almost liveable until you have to do anything with unicode, but in the end, you always end up having to deal with unicode

then: lol

but, but, what about my non-portable serialization?

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

PleasingFungus posted:

python 2 is garbage and I can't wait for it to die

it's almost liveable until you have to do anything with unicode, but in the end, you always end up having to deal with unicode

then: lol

They didn't remove asyncore from Python 3 and that makes it a bad language.

Also, there was a new standard library thing called concurrent.futures that nobody likes and the only reason it got in was because people were too busy arguing over whether it should be called "futures", "deferreds" or "promises". No, seriously.

Python 3's unicode support isn't great. It's impossible for me to build an HTTP server that serves bytes from arbitrary files without converting it to UCS-4 internally, which means that serving a 10MB file blows up to 40MB in memory. Also, you have to copy it like twenty times before it gets to bytes on the other side.

double riveting
Jul 5, 2013

look at them go

Mr Dog posted:

(i mean boehm gc somehow deals with this problem so i guess it isn't an intractably broken design but this entire class of garbage collectors are lovely hacks to begin with)

actually, in my book they're pretty neat hacks. they are the only way to get garbage collection in C. unless, you know, you are managing your own references at which point you're essentially running an interpreter.

forgetting about the fact that registers can hold heap pointers is nothing more than a stupid newbie mistake.


Notorious b.s.d. posted:

design determined by implementation details of naive interpreter, instead of a language spec (perl, php, python, ruby, tcl, vb)

i don't know, i think you're either being unjustly negative ("implementation details" (~> overparticularity), "naive" (~> thoughtlessness)) or unjustly inclusive (it's okay and inherent for language design to determine some details of implementation). for instance, i think python and tcl are sensible designs.

Sapozhnik
Jan 2, 2005

Nap Ghost

quote:

tcl

lol no weak typing is terrible

Tiny Bug Child
Sep 11, 2004

Avoid Symmetry, Allow Complexity, Introduce Terror

Mr Dog posted:

lol no weak typing is terrible

incorrect

Sapozhnik
Jan 2, 2005

Nap Ghost
case in point

suffix
Jul 27, 2013

Wheeee!

Suspicious Dish posted:

It's impossible for me to build an HTTP server that serves bytes from arbitrary files without converting it to UCS-4 internally, which means that serving a 10MB file blows up to 40MB in memory.

i'll believe you but i have no idea how you would manage to gently caress it up that badly. like the worst implementation i can think of would only blow it up to UCS-2

Brain Candy
May 18, 2006

suffix posted:

i'll believe you but i have no idea how you would manage to gently caress it up that badly. like the worst implementation i can think of would only blow it up to UCS-2

wchar is 32-bits on linux

Malcolm XML
Aug 8, 2009

I always knew it would end like this.

suffix posted:

i'll believe you but i have no idea how you would manage to gently caress it up that badly. like the worst implementation i can think of would only blow it up to UCS-2

utf8 and ucs4 are basically all anyone should bother with now

suffix
Jul 27, 2013

Wheeee!
py3 strings vary in size based on the largest present code point now, mostly to save space on ascii-only strings

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
Aha. That wasn't the case when I looked at it during the Python 3.2 era.

That's a clever hack! but I still don't like the way they implemented Unicode support. There's a lot of cases when you want bytes as "text" strings without converting to a sequence of integers.

tef
May 30, 2004

-> some l-system crap ->

Suspicious Dish posted:

Python 3's unicode support isn't great. It's impossible for me to build an HTTP server that serves bytes from arbitrary files without converting it to UCS-4 internally

*record scratch sound* say whaaat

Notorious b.s.d.
Jan 25, 2003

by Reene

double riveting posted:

i don't know, i think you're either being unjustly negative ("implementation details" (~> overparticularity), "naive" (~> thoughtlessness))
i did not mean naive in a negative sense

matz implemented ruby in the most straightforward and obvious way, the "naive" choice. mri code is mostly very easy to read (particularly before 1.8). this is good for hacking on the interpreter. this is bad for the language design.

double riveting posted:

(it's okay and inherent for language design to determine some details of implementation). for instance, i think python and tcl are sensible designs.

you either can't read or can't type. many of python's problems come from the implementation defining the design. the arrow should flow the opposite direction

obvious things that come to mind for python:
* dumbfuck refcount gc (determined by interpreter's C api)
* totally unfixable global interpreter lock

when google can't fix your locking problem you know you are in trouble

Notorious b.s.d. fucked around with this message at 20:11 on Jan 11, 2014

Notorious b.s.d.
Jan 25, 2003

by Reene

double riveting posted:

forgetting about the fact that registers can hold heap pointers is nothing more than a stupid newbie mistake.

it's a consequence of going with a naive implementation rather than bytecode or anything. ruby objects are C structs and C pointers. this makes garbage collection and compiler optimizations a dangerous combination

turns out if you compile mri with -O2, sometimes the compiler makes the right decision for C and the wrong decision for ruby






p.s. it is a bad sign that your post is so full of stupid i have to quote it twice

Notorious b.s.d. fucked around with this message at 20:10 on Jan 11, 2014

emoji
Jun 4, 2004
python is fine and nobody in the real world actually has problems with the GIL, which is also solved in other implementations to satisfy those spergnerds. python is still the best for exploratory data manipulation/analysis, gluing parts together and hooking things up to the web. if you're writing system software in python then lol. who uses just one language anyway

Socracheese
Oct 20, 2008

i have successfully pushed most of my non-python work onto newer coworkers than me its rly nice i dont have to do poo poo

Notorious b.s.d.
Jan 25, 2003

by Reene

kraftwerk singles posted:

python is fine and nobody in the real world actually has problems with the GIL, which is also solved in other implementations to satisfy those spergnerds. python is still the best for exploratory data manipulation/analysis, gluing parts together and hooking things up to the web. if you're writing system software in python then lol. who uses just one language anyway

python's badness may or may not affect its applicability to your problem

bad languages can still be useful

edit: also, lots of system software is written in python. did i ever tell you about the time that python's broken garbage collection put my ~*~enterprise linux~*~ systems into a situation where they could not patch themselves?

Notorious b.s.d. fucked around with this message at 20:22 on Jan 11, 2014

Notorious b.s.d.
Jan 25, 2003

by Reene
also the reason that the GIL doesn't give anyone problems in "the real world" is that every python developer is taught from day one to stay the gently caress away from python threads

once burnt, a thousand times shy

it's still a really bad and stupid problem to have in a language

Socracheese
Oct 20, 2008

everything is a poo poo fractal. except maybe C, but its also bad because it takes way too long to use to solve small problems

Notorious b.s.d.
Jan 25, 2003

by Reene

Socracheese posted:

everything is a poo poo fractal. except maybe C, but its also bad because it takes way too long to use to solve small problems

i disagree. java and .net basically own bones

this is because they were written by people who had already learned some hard lessons about language and platform design. on rare occasion, the "second system effect" is a positive good.

Sharktopus
Aug 9, 2006

Notorious b.s.d. posted:

also the reason that the GIL doesn't give anyone problems in "the real world" is that every python developer is taught from day one to stay the gently caress away from python threads

once burnt, a thousand times shy

p much this

you just use an eventing lib if you need concurrency

Socracheese
Oct 20, 2008

is there a way to even write .net not using visual studio

Arcsech
Aug 5, 2008

Socracheese posted:

is there a way to even write .net not using visual studio

comedy option: http://monodevelop.com/

Socracheese
Oct 20, 2008

my liberal obama brainwash college got me doing all my coding on unix and i havent coded on windows since using bloodshed C++ compiler on windows NT or something

coding on windows seems p awful imo

Notorious b.s.d.
Jan 25, 2003

by Reene

Socracheese posted:

is there a way to even write .net not using visual studio

emacs c# support is really crude/bad, dont bother trying it unless you are just in love with cedet.

monodevelop wasn't terrible the last time i used it. people tell me the xamarin ide is nice but it aint cheap.

Notorious b.s.d.
Jan 25, 2003

by Reene

Socracheese posted:

my liberal obama brainwash college got me doing all my coding on unix and i havent coded on windows since using bloodshed C++ compiler on windows NT or something

coding on windows seems p awful imo

coding on windows is pretty nice

it is everything else that is terrible: putting up with microsoft's sudden and capricious deprecations, negotiating microsoft volume licenses, managing microsoft app servers, the lack of open source, working with coworkers dumb enough to be working in a windows shop etc

Sapozhnik
Jan 2, 2005

Nap Ghost
nah windows programming is still terrible

c# loving owns but the standard library is a very mixed bag. in particular asp.net is horrible garbage: it tries to simulate a stateful control hierarchy within a single html <form> by serialising and HMACing the state of that control hierarchy and round-tripping it through the client, which will use some prehistoric magic javascript poo poo to attach an event to the state blob on every POST back which will fire once the server deserialises the control state.

web development is not client ui development ffs.

otoh this was the state of the art in like 2010 so maybe they've just walled off that part of the standard library (which must nonetheless continue to exist in perpetuity) and created a new framework from scratch since then.

Adbot
ADBOT LOVES YOU

Plastic Snake
Mar 2, 2005
For Halloween or scaring people.
it's called asp.net mvc and it owns bones

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply