[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y ] [Home]
4chanarchives logo
Favourite programming languages
Images are sometimes not shown due to bandwidth/network limitations. Refreshing the page usually helps.

You are currently reading a thread in /g/ - Technology

Thread replies: 141
Thread images: 7
File: Python-logo-notext.svg.png (173 KB, 2000x2000) Image search: [Google]
Python-logo-notext.svg.png
173 KB, 2000x2000
What's your favourite programming language and why?
>python because I'm a nood
>>
C#

Because of extensive .NET framework and many other reasons.

Try it out today!
>>
Python.

Gets shit done in a straightforward way.
>>
Go is quickly becoming my favorite language but I'm not sure why exactly.

Might be because it's a statically typed, garbage-collected compiled language with all the convenience of a dynamic interpreted language.

Might be because it's designed in such a way that dependencies are easy.

Might be the fact that concurrency makes sense and just works.

Might be because it is free of all OOP dogma and discourages magic behavior and clever code solutions in favor of a more procedural, straight-forward, simple approach with an emphasis on proper error handling and type safety.

Might be that error handling is just strings with no concept of exceptions or special mechanisms thereof.

Might just be that I always wanted to write portable command-line programs and daemons and I finally can do so with unprecedented ease.

dunno really
>>
>>51996066
enjoy your
res, err := fail()
if err != nil {
panic(err)
}
>>
>>51996074
https://blog.golang.org/errors-are-values
>>
Java > all
Prove me wrong neets
>>
Clojure
>lisp
>functional
>jvm
>Developed by hardcore C++ programmers (Not hippes)
>Clojurescript which let's me develop web apps with the same awesomeness of clojure.

I want to confess that I was a NEET jumping through programming languages and can't learn even one programming language properly, it continued for 4 years and then I discovered clojure and i just got sucked into it. It's just very useful and awesome.
>>
C++
I have used many languages since, but it was my first.
>>
>>51996066
10 Ugandan dollars have been deposited into your Go account.
>>
I use python or scheme when I want to try something quickly because they're what I learned in my cs 101 class and because of the prompt interface.
>>
>>51996118
Clojure is cool but it's so damn slow, like on levels of slow that I didn't even know existed.
>>
>>51996121
I'm so sorry.
>>
>>51995761

Python is my first language aside from html/css and it seems like it does everything I need.
Pygame helps to :3
>>
Ruby, it has a great syntax and it's good for DSL.
>>
>>51996152
Anon clojure is bretty good now,
I accept the starting time is slow but they are working on it and next version of jvm has features which makes the overall language superfast...
>>
>>51995855
I love C#. It's so solid.

Is it widely used in web solutions? I dont know since people are too narrow minded on PHP around here.
>>
>>51996121
desu Anon I wish I stayed on that same route. I started it and it kind of discouraged me, now my main languages are Python, Java, and Haskell. I'm not completely bad at C++, just very intro
>>
Haskell
>>
>>51996030
Same here. Helps that most of our research group's and industry's tools are implemented in Python.
>>
>>51996204
Heck, my main languages nowadays are c# and python, but it's nice I have that C++ experience to fall back on.

Kinda jelly of Haskell, I used it a bit and it was really near but never got a chance to really get into it.
>>
>>51996066
That's great but where's my newline braces?
>>
>>51996203
I love c#, but always felt asp was just the most unnecessary overkill ever. It works, but it ain't fun.
>>
I honestly don't know. I've used many languages and they all sucked in a certain way.
>>
>>51996171

One thing I really dislike is the fact everything is compared with "==", really confusing. Though it does makes sense since everything is an object.
>>
python because I'm an EEE
>>
>>51995855
C# requires BotnetOS so no
>>
I adore python, but I just can't wrap my head around the object oriented stuff for it.

So I mainly use java. Strange how that works.
>>
>>51996265
How is that confusing? What are you used to?
You can also use x.equal? y if you prefer.
>>
>>51996030
True. It did so well in scientific computing.

Why /g/ hates Python so much anyway?
>>
>>51996329
>Why /g/ hates Python so much anyway?

Because they are autistic NEETs.

Same reason they hate C# and many other things.
>>
>>51996265
consider changing font with shorter equal sign; with == looks like = =
>>
>>51995761
C#

It's comprehensive, there's a library for everything, and tons of support.

Very very fucking easy to do GUIs or interact with graphics in general.

I'm a small-shop full stack dev, so C# is the best choice for me.
>>
>>51996286
heard that python implement OOP much later.

That's why it's broken. And all these Python3 transition is about trying to fix those things.
>>
>>51996329
Who cares about /g/'s opinion?
>>
>>51996358
/g/ themselves
>>
>>51996343
I don't "hate" C#, I "hate" the people that shill it on every occasion and create 10 daily threads about it.
>>
>>51996348
C# really does get too much hate.

It's amazing how nearly everything is built into the framework.
>>
>>51996356
It's not broken at all.

But I can see why Java makes getting into OOP easier;
Java forces OOP much more.
>>
>>51996388
>I "hate" the people that shill it on every occasion and create 10 daily threads about it.

That's literally me.

>Tfw you keep making a thread about C# at all times whenever you wake up and throughout the day

In fact I made this very thread several times over the last few days.
>>
>>51996074
enjoy you're opaque control flow
>>
>>51996403
I'm not far from reporting them as spam lad.
>>
>>51996468
>Implying le volunteer cleaners care when there's literal spam being repeated posted with 10 threads on the same topic saying "freetards btfo"
>>
>>51996482
Just tone it down a bit.

Its not like those threads are getting a big resonance anyways, its usually something 12 responses from 7 unique posters and every second post is a bump.
>>
>>51996554
Yeah I gotta step my game up if I want to b8 /g/.

I am much better at b8ing /pol/ though, but I guess that's not much of an accomplishment.

>Literally repost same b8 threads every few hours
>Every single time get 100+ replies without fail
>>
>>51996286
>can't wrap my head around the object oriented
>So I mainly use java™

wat
>>
C++ because fuck you, im an anteater
>>
C#™ with the .NET™ framework on microsoft™ windows™ 10™
>>
>>51996789
$50 of azure credit has been deposited into your account.
>>
>>51996763
reading comprehension
>>
>>51996789
I legitimately think these are all good things.
>>
Haskell

I'd get tired if I had to enumerate all the reasons, so here are just a few:
- libraries extremely easy to use and compose
- explicit side-effect annotations
- lightweight syntax, very expressive
- ghc optimizations (hhhng stream fusion...)
- template haskell lets you do literally anything at compile time
- type system and clean, elegant abstractions
- once experienced, it's fast to write and safe against crashes
>>
>>51995761
JavaScript because I like functional programming, but I also like getting paid. And ES6 has a lot of neat stuff.
>>
>>51998458
>functional programming in a language that doesn't even proper lexical scoping

the horror
>>
>>51996358
>>51996369
You guys...

I like you guys
>>
>>51998492
The Lispers managed it for 30 years.
>>
>>51995761
Elixir and F#. Love them both but end up using Elixir most of the time now since I do network programming and work primarily on Linux.
>>
>>51996118
>Developed by hardcore C++ programmers

Almost everyone in the Clojure community comes from the Ruby community and Rich Hickey doesn't know C++ at all. Before he created Clojure he worked primarily in Java with fond memories of Common Lisp.
>>
>>51998683
what lisp dialect people actually use doesn't have lexical scope?

common lisp and scheme do have it
>>
>>51998749
All of the Lisps that mattered.
>>
Assembler, it does everything you can think of, extremely efficient, awesome performance and it helps you think different (in a good way, not the apple sheep way)
>B-but its too hard...
It isnt for everyone
>>
>>51998768
Yes, past tense. COBOL also mattered.
There's a reason no one's using that shit anymore.
>>
>>51998722
>Elixir
Mind elaborating on why elixir, and not just erlang?
>>
[spoiler]Visual Basic 6[/spoiler]
Because it just werks.
>>
>>51998815
Shit aside, its RAD is pretty fucking awesome.
>>
>>51998749
Emacs Lisp?
>>
>>51995761
java
>>
>>51998845
It doesn't?
Wow emacs is even worse than I thought.
>>
>>51998827
Yep, but VB6 is way better than obscure vb.net
>>
>>51995761
java
>>
>>51998811
The Elixir standard library is way better than Erlang's and a lot of the libraries I want to use, mostly plug, ecto and phoenix, are written in Elixir.

The Elixir macro system is also really well designed and it eliminates a ton of boilerplate code. Your typical gen_server example from Erlang is like half the lines in Elixir.
>>
File: 1448713541792.jpg (62 KB, 345x539) Image search: [Google]
1448713541792.jpg
62 KB, 345x539
>>51998535
Yea? Well go fuck yourself
>>
>>51996074
This. I hated so much doing this all the time when I was in a Go project
>>
>>51999066
I should also add I really like Elixir protocols. They're very similar to Haskell's type classes and Clojure protocols and I think that's the correct way to handle polymorphism.
>>
>>51999103
Cool, thanks. Tried Erlang for a while but couldn't really get much done with it.
>>
>>51999086
ok then
>>
>>51999121
If you ever decide to check it out "Elixir in Action" is a good book and it's easy to find a free copy if you don't want to spend the cash on it.
>>
>>51996066
Enjoy getting compile errors because you have an unused variable
>>
>>51999448
>having unused variables
>>
>>51999549
I'll be using it soon.
>>
I really like to use python. Makes me kind of sad when I have to use C after using python because "muh compiled language"
>>
>>51999627
you should try scipy.weave
>>
>>51995761
I'm a newfag that's deciding to learn C first before others. Plan to move to Java afterwards.

Although I like the look and concept of Python.
>>
>>51999753
>I'm a newfag that's deciding to learn C first before others.
this is the only way to go
>>
Visual Basic
>>
>>51999827
I've heard tonnes of different opinions. Some passionately hating C. Some supporting it. Some indifferent. The fact is, it's best just to fucking learn something rather than obsess over whether it's right to learn it. Every language brings with it an understanding of computation, perhaps imperative languages like C brings a little more so. Who knows. I want to know more about computers in general, which is why I'm learning C (through C Primer Plus by Stephen Prata) and reading a novel about Bits and binary code.

Why, in your opinion, is it good to learn C before learning any others? So far, it's really simple and straightforward, but cumbersome. I enjoy it, though.
>>
>>51999916
learn about the basics, before you abstract them away to the language
>>
>>52000020
yes learn vhdl first
>>
>>51999753
SICP
I
C
P
>>
>>51999916
Just learn C. It has almost no abstraction. It's great for your first language.
>>
>>52000020
>>52000067

Yeah, that's how I rationalised it. I want gory details so I know how to dissect functions in higher-level languages.

Or just generally knowing the details of subsequent languages as soon as I learn them is rather comforting.

I've learnt about basic stuff in the past two weeks. Control structures like if and switch, Boolean expressions, loops, conversion characters, and basic data types. Should I learn about arrays indepth or concentrate on something else? I've been doing mini exercises like writing programs that simulate a Cola Machine with if-else and switch-case and programs that do arithmetic calculations based on user input and stuff like that. Really basic stuff but I guess it takes a while to learn to use C for anything extensive.
>>
>>52000044
but anon, that's not a programming language
assembly the real way to go
>>
>>52000174
>Should I learn about arrays indepth
Only if you want to do anything remotely useful.
>>
>>52000198
assembly is too much abstraction,
write in machine code
>>
>>52000220
but that's not abstraction, it's translation
>>
>>52000247
I'd call macros and pseudo-instruction an abstraction
>>
>>52000282
oh shit, yeah
well better dust off my custom 256-key hex input keyboard
>>
>>52000199
Gotcha.

Where do I start? All I know about arrays is that it's a data structure that is essentially a list of elements of the same data type. I wouldn't know where to begin expanding my knowledge on arrays.
>>
>>52000199
>>52000734

Oh wait. There's this 1000 page textbook. Never mind. Problem solved.
>>
>>52000750
Sorry, but you don't need 1000 pages about arrays. Seriously, it's not a hard concept.
>>
>>52001204
It's a better to read the Understanding and Using Pointers book
>>
>>51995761
C because it's a really simple and imperative language or Haskell because of the syntax and typing system.

I'm beginning to really enjoy Erlang/Elixir too.
>>
i like R

ayy lmao
>>
I like python because it's the shortest path between what I want to do in my head and the program actually accomplishing it.

Most of my frustrations in school with C++ and java had nothing to do with the concept of what I was trying to accomplish -- but errors, syntax, and other tertiary concerns getting in the way.
>>
>>52003043
This is also pythons downfall.

C++ forces good programming concepts (static type, think ahead), and python, while more forgiving, doesn't force those same forward thinking concepts. that ultimately leads to better overall design as projects scale etc
>>
>>52003103
C++ forces micromanagement of parts that are often entirely meaningless to the end goal. It consumes unwieldy amounts of time for people who care about an answer or a decision, not the running of the thing itself.
>>
>C
C can't even average 3 ints
>>
>>52002802
R isnt even a programming language you statistician.
>>
>>52003345
what's wrong with
(a+b+c)/3.0
>>
>>52001204
It's C Plus Primer by Stephen Prata. It's 1000 pages all on C, not solely arrays, haha.

There's a section on Arrays though.
>>
>>52003957
Some bullshit about overflow but who gives a shit. Ignore the meme bait and it will die.
>>
>>52003957
Fails with
a+b+c > pow(2, sizeof(int) * 8 - 1)
>>
>>52004000
is that a bad thing? why would it be able to go above the max value an int can hold
>>
>>52004048
a = 200000000
b = 100000000
c = 0
are perfectly valid integers.
(a+b+c)/3.0 however will not calculate their average
>>
>>52004103
(long long)(a+b+c)/3.0
>>
>>52004136
Doesn't work on x86_64 where sizeof(long long) == sizeof(int)
>>
>>51996268
No it works on Linux or osx too. Its called mono
>>
>>52004188
#include <cstdint>

(int_least64_t int_least64_t)(a+b+c)/3.0
>>
>>52004188
>>52004136
Correction, it doesn't work in any case.
int avg3_ll(int a, int b, int c)
{
﮵ return (long long)(a+b+c)/3.0;
}


avg3_ll(2147483647, 2147483647, 0)
returns 0

>>52004222
also falsely returns 0

Averaging 3 ints in C is hard.
>>
>>52004103
It works here
>>
>>51996066
not sure i agree that concurrency just works and while dependencies are easy there are gotchas. i like go because it is easy to write and easy to maintain.
>>
>>52004296
#include <stdio.h>
#include <math.h>
#include <limits.h>

int average(int a, int b, int c)
{
return (a+b+c)/3.0;
}

int main()
{
int a = INT_MAX;
int b = INT_MAX;
int c = 0;
printf("average(%d, %d, %d) == %d\n", a, b, c, average(a, b, c));

return 0;
}


yields

average(2147483647, 2147483647, 0) == 0
>>
File: whot.png (60 KB, 300x280) Image search: [Google]
whot.png
60 KB, 300x280
>>51996789
> Trademarking the number 10
>>
>>51999448
Just comment them out until you actually use them you fucking mong
>>
>>51995761
Currently: Go, because it's a small but comprehensive, (relatively) fast, memory safe, statically-linked language. I primarily use it for making network applications and command line utilities. (I have used it for more outlandish things, like a userspace USB driver. It was very painful, and nobody should do it ever. On the other hand, it still works, and I use it daily.)

That's not to say I only want to use Go, there are other interesting languages on the proverbial market, new and old, each with niches they fill.
- Assembl(er|y) for things that need to be fast
- Ada for things that need to be safe
- Erlang for things that need to be up forever
- Julia for things I don't want to learn python for
- OCaml for god knows what (I've read ML-family languages are good for compilers)

Outside the realm of useful languages, there are Swift, Pony ( https://ponylang.org ), and Plan 9 C
>>
>>52004353
#include<stdio.h>
#include<math.h>
#include<limits.h>

long long int average(int a, int b, int c) {
return ((long long int)a + (long long int)b + (long long int)c)/3.0;
}

int main() {
int a = INT_MAX;
int b = INT_MAX;
int c = 0;
printf("average(%d, %d, %d) == %d\n", a, b, c, average(a,b,c));
}


Ugly as fuck but it works
>>
>>52004572
Well done
Now averaging 3 long longs however :^)
>>
>>52004353
INT_MAX + INT_MAX = -2 stored as an INT. Then (-2/3.0) = 0.666666..., take the whole part and it equals 0 stored as an INT. Seems its working as intended
>>
>>52004103
>a = 200000000
>are perfectly valid integers.
implementation defined.
C implementations only need to support ints up to +- 32767
>>
File: HD Animals_ happy cat.jpg (42 KB, 418x467) Image search: [Google]
HD Animals_ happy cat.jpg
42 KB, 418x467
Vbscript

Because it comfy. Can't use it alot, or for that much, but when I can, I do. Otherwise PHP for web shit and c,c++,c#,java for normal stuff.
>>
>>52003345
You can't into programming. You're literally complaining about not knowing the language, but it's not your fault, oh no. Because you're smart.
>>
>>52005469
smarter than you you moron
>>
File: rust.png (111 KB, 400x400) Image search: [Google]
rust.png
111 KB, 400x400
Rust, even though the amount of .unwrap()s can be infuriating sometimes.
>>
>>51996203
> Is it widely used in web solutions?

I wish it was. By usage it is nowhere near the levels of the more mainstream languages in that sphere (Python, Ruby, Node). That has a negative effect on the community and the lack of libraries and packages.
>>
JavaScript because it's my strongest language, is pleasant to write, and gets me paid.

Already using ES6 on our new project and it has some pretty neat sugar.
>>
File: Perl-camel-small.png (5 KB, 144x149) Image search: [Google]
Perl-camel-small.png
5 KB, 144x149
Gets shit done.
>>
https://www.youtube.com/watch?v=UigzN-4JR14
>>
>>52005623
IDIOT
>>
>>51996170
> Aside from html/css
Those don't count as programming languages, son
>>
Python as a language is nice. Shame about the runtime performance of its implementations however. Most of my projects are done in Java.
>>
I don't want it to become another Lisp or Haskell: something that people who are too dumb for Java pretend to use because it makes them look more intelligent.
Thread replies: 141
Thread images: 7

banner
banner
[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y] [Home]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
If a post contains personal/copyrighted/illegal content you can contact me at [email protected] with that post and thread number and it will be removed as soon as possible.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com, send takedown notices to them.
This is a 4chan archive - all of the content originated from them. If you need IP information for a Poster - you need to contact them. This website shows only archived content.