Jump to content

The great language debate !!!

You're all still missing it guys.

 

It's TrumpScript 

Current Build:

CPU: AMD Ryzen 5 2600 // Mobo: Ryzen AM4 B350 GAMING PLUS ATX // RAM: 16GB Corsair Vengeance LPX DDR4 3000MHz // GPU: Gigabyte AMD Radeon RX 580 Gaming 8GB // SSD: Kingston A400 120GB // HDD: 3 x WD Blue 1TB // PSUCorsair 650M // Case: Corsair 450D // Monitor: LG Ultrawide 29" IPS

 

Plex Server:

CPU: AMD FX 8350 Black Edition // Mobo: Gigabyte - GA-78LMT-USB3 R2 Micro ATX // RAM: 16GB Corsair Vengeance DDR3 1600 MHz // GPU: GeForce GTX 670 // HDD: Seagate BarraCuda 2TB // PSU: Kolink Core Series 500W 80 Plus Certified // Case: AVP Viper Mini Tower

 

Other:

PS4 Pro // PS3 // Nintendo Switch (Pokemon edition) // Nintendo 3DS // Xbox 360 // iPhone 8 Plus // Macbook Retina 2013

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, lal12 said:

How would you write critical parts of your OS if not in assembler or any library that needs performance? And like I said, I don't want to distinguish between assembler and machine code cause they are quite close. Also every compiler compiles into assembler/machine code in the end.

Because C is so well understood that it can be optimized to the point that you don't really need to touch assembly language most of the time. And in some instances, trying to hand-optimize to assembly can result in worse performance.

 

I've written a bunch of things that needed high performance and had a real-time requirement in C. The only time I ever needed to touch assembly was because the microcontroller hadn't jumped to the C program and I needed it to do something before then.

Link to comment
Share on other sites

Link to post
Share on other sites

9 minutes ago, Erik Sieghart said:


As a note, that article is about .NET, not C.

Unless it's redirecting you somewhere, it's not about anything other than trying to be smart about inline assembly and "optimize" your code by writing less lines than what the compiler outputted into assembly

Link to comment
Share on other sites

Link to post
Share on other sites

13 hours ago, M.Yurizaki said:

Because C is so well understood that it can be optimized to the point that you don't really need to touch assembly language most of the time. And in some instances, trying to hand-optimize to assembly can result in worse performance.

 

I've written a bunch of things that needed high performance and had a real-time requirement in C. The only time I ever needed to touch assembly was because the microcontroller hadn't jumped to the C program and I needed it to do something before then.

I did not talk about performance by means of better algorithms, but still sometimes this is the case that you can get quite a performance boost.

 

I was talking about doing special things like using special hardware, like e.g. a different adressing mode. Sometimes in very time critical cases you need it to be absolute sure that another Compiler Version does not get you different fast codes. Also sometimes if you have to interface Software Form different compilers with different conventions on parameter passing.

 

Also support for MMU, and other CPU Blocks is implemented in Assembler for finer control.

 

And at least the coder of the compiler needs to write assembler.

 

I know theese are more rarely usw cases, bit still nothing would work without machine code, it is all I said from the beginning.

Link to comment
Share on other sites

Link to post
Share on other sites

the important thing is that whatever language you prefer makes you feel intellectually superior to your peers.

 

Java? well good on you for embracing abstraction and modern OOP philosophy. Those lower level heathens don't know what they are missing.

 

Haskell? You are clearly on the bleeding edge of software development, as you've already embraced modern functional programming. Maybe someday those stateful philistines will learn.

 

C? Everyone else is just on easy mode. Your ability to work without objects clearly makes you a superior breed. Those C++ guys think they are the same level because "lol look I can pointer", but we all know they are basically just java-heads without the garbage collection. Bonus points if you can cram C into every project whether it needs that level of optimization or not. 

 

Assembly: HAHAHAHAHAHAHAHAHAHAHAHAHAHA!

 

requirements team: WHO GIVES A FUCK THE PROJECT IS STILL LATE!!!!

Gaming build:

CPU: i7-7700k (5.0ghz, 1.312v)

GPU(s): Asus Strix 1080ti OC (~2063mhz)

Memory: 32GB (4x8) DDR4 G.Skill TridentZ RGB 3000mhz

Motherboard: Asus Prime z270-AR

PSU: Seasonic Prime Titanium 850W

Cooler: Custom water loop (420mm rad + 360mm rad)

Case: Be quiet! Dark base pro 900 (silver)
Primary storage: Samsung 960 evo m.2 SSD (500gb)

Secondary storage: Samsung 850 evo SSD (250gb)

 

Server build:

OS: Ubuntu server 16.04 LTS (though will probably upgrade to 17.04 for better ryzen support)

CPU: Ryzen R7 1700x

Memory: Ballistix Sport LT 16GB

Motherboard: Asrock B350 m4 pro

PSU: Corsair CX550M

Cooler: Cooler master hyper 212 evo

Storage: 2TB WD Red x1, 128gb OCZ SSD for OS

Case: HAF 932 adv

 

Link to comment
Share on other sites

Link to post
Share on other sites

6 minutes ago, reniat said:

the important thing is that whatever language you prefer makes you feel intellectually superior to your peers.

So what does your supposition say about those that choose to work in all of those languages and more I wonder.

The single biggest problem in communication is the illusion that it has taken place.

Link to comment
Share on other sites

Link to post
Share on other sites

17 minutes ago, Dat Guy said:

Maybe: Get a job? :D 

I have too many of those already xD

The single biggest problem in communication is the illusion that it has taken place.

Link to comment
Share on other sites

Link to post
Share on other sites

7 hours ago, lal12 said:

I was talking about doing special things like using special hardware, like e.g. a different adressing mode.

Addressing modes aren't using special hardware. And unless you're using x86, most things are RISC now which limits you to load-store only.

7 hours ago, lal12 said:

Sometimes in very time critical cases you need it to be absolute sure that another Compiler Version does not get you different fast codes. Also sometimes if you have to interface Software Form different compilers with different conventions on parameter passing.

I don't see how needing to know assembly language helps with interprocess communication.

7 hours ago, lal12 said:

Also support for MMU, and other CPU Blocks is implemented in Assembler for finer control.

Huh?

 

I'm pretty sure during my times in microcontroller land (which is basically bare-metal programming), all I did to control any part of the CPU was "write some value to this address." And the microcontroller manufacturer gave a handy table of pointers to do that.

 

7 hours ago, lal12 said:

And at least the coder of the compiler needs to write assembler.

 

I know theese are more rarely usw cases, bit still nothing would work without machine code, it is all I said from the beginning.

You can have an architecture without machine code. See https://en.wikipedia.org/wiki/No_instruction_set_computing

 

It's theorized the NVIDIA's GPUs since Kepler are NISC processors.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×