Quantcast
[ 3 / biz / cgl / ck / diy / fa / g / ic / jp / lit / sci / tg / vr / vt ] [ index / top / reports / report a bug ] [ 4plebs / archived.moe / rbt ]

Due to resource constraints, /g/ and /tg/ will no longer be archived or available. Other archivers continue to archive these boards.Become a Patron!

/g/ - Technology


View post   

[ Toggle deleted replies ]
File: 115 KB, 1400x1376, iec_61131.jpg [View same] [iqdb] [saucenao] [google] [report]
64536085 No.64536085 [Reply] [Original] [archived.moe] [rbt]

What are you working on, /g/?

Previous Thread: >>64524750

>> No.64536111
File: 34 KB, 408x450, 1500178830057.png [View same] [iqdb] [saucenao] [google] [report]
64536111

>c++ is the greatest language of all time

>> No.64536118

why is the image a photo of an average lookings woman in her early 30s

>> No.64536147

>>64536085
I just came across this language:
http://sprylang.org/

It's really pretty neat. Basically Smalltalk meets REBOL.

>> No.64536151
File: 768 KB, 540x720, akarin.gif [View same] [iqdb] [saucenao] [google] [report]
64536151

>>64536111
If it's not true then why c++ is so popular?

>> No.64536178
File: 6 KB, 339x172, Capture.png [View same] [iqdb] [saucenao] [google] [report]
64536178

>javascript

why is this error?

>> No.64536180

>miss meeting with my group for my software engineering class because of the flu
>check back in the next day
>"yeah we're writing an android app in C"

>> No.64536182
File: 206 KB, 1270x1650, 19660017566.png [View same] [iqdb] [saucenao] [google] [report]
64536182

Here's a scan of an original NASA specification for a Fortran IV program. Full of formulas and flow charts.

https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/19660017566.pdf

>> No.64536193

>>64536178
Wrong double quotes, you nigger.

>> No.64536200

>>64536178
Idk man but the lack of any indentation there is beyond disgusting

>> No.64536202

>>64536178

lmao you nigger just use the replace method

>> No.64536214
File: 830 KB, 808x805, 910.png [View same] [iqdb] [saucenao] [google] [report]
64536214

>>64536178

>> No.64536235

Who distributed high performance parallel comping here?
https://chapel-lang.org/

>> No.64536256

>>64536085
what does this image have to do with programming?

>> No.64536300

I have no idea what programming is or does sorry.

>> No.64536312

i'm sick today /g/ :(

>> No.64536352

>>64536256
Ladder logic is programming

>> No.64536353

>>64536312

gute besserung mein neger

>> No.64536365

I wonder if kids and noobs were introduced to pure functional programming first and only used that for quite a while, and then tried to learn something like C or Java, if that would be really difficult for them?

>> No.64536370

>>64536118
It's more like her mid thirties.

>> No.64536399
File: 6 KB, 326x184, derp2.png [View same] [iqdb] [saucenao] [google] [report]
64536399

>>64536193
it didnt even work
>>64536202
im still learning so didnt wanna use shortcuts

>> No.64536416

>>64536399
use a non meme language

>> No.64536442

I am trying to understand the difference between a function and a method and I fell on this post : https://stackoverflow.com/questions/155609/difference-between-a-method-and-a-function/155655#155655

But I am not sure if I truly understand the second point :
"A method is able to operate on data that is contained within the class (remembering that an object is an instance of a class - the class is the definition, the object is an instance of that data)."

Doesn't it mean that a method has access to variables contained within the global scope + the class scope, or am I understanding something wrong ?

>> No.64536497

>>64536442
That's right.
A procedure (a function as C may call it) has access to variables in global scope.
A static method can access variables in global and class scope.
An instance method can access variables in global, class and object scope.

>> No.64536506

>>64536399
Strings are immutable (you can change them) also don't use keywords (finish) as variables pls

>> No.64536509

>>64536442
a method has specific semantics to break the encapsulation of the instance it's bound to.

>> No.64536514

>>64536442
i thought they were the same thing just 2 different names

>> No.64536518

>>64536506
>(you can change them)
can't

>> No.64536546

>>64536509
What is that supposed to mean? I don't quite understand.

>> No.64536565

>>64536546
A method can access private and protected members. These are encapsulated implementation details that do not constitute part of the class's interface.

>> No.64536586

>>64536509
>a method has specific semantics to break the encapsulation of the instance it's bound to.
This is a bizarre way to put it. The method doesn't break encapsulation (unless it returns a reference to your object's private parts or something equally stupid). The implementation of the method is a part of the class definition. It's like saying that your liver has specific semantics to invade your body.

>> No.64536632

>>64536586
class Foo
{
private a;
}

// method
Foo::geta()
{
return self.a // break encapsulation
}

// procedure
foo_geta(Foo f)
{
return f.a // error, can't break encapsulation
}


also, oop is not necessary done through classes.

>> No.64536636

>>64536506
so what if i store it in another variable and change it and then returns that?

and is there a text editor that warms me if a variable im using is a keyword?

im just using notepad atm cuz someone told me not to use fancy text editors that autocomplete shit and i wont lean that waay

>> No.64536665

>>64536632
The method implementation is part of the class definition. The syntactic quirks of C++ are irrelevant.

>> No.64536676

>>64536632
How is this necessarily breaking encapsulation? What if the private variable directly represents some property of the object that is useful to users of the object, such as the size of a list?

Now if you're returning a reference/pointer to private data, that's another problem entirely.

>> No.64536699
File: 26 KB, 720x736, 27157785_1995530520487101_1659540223_n.jpg [View same] [iqdb] [saucenao] [google] [report]
64536699

>>64536514
(You)

>> No.64536701

>>64536665
That's not just C++, that's any language with a "private" access specifier.

>> No.64536745

>>64536701
You have brain damage. The method implementation is a part of the class definition. Even if you spread this definition over 500 files and put unrelated crap in them. This is not up for debate.

>> No.64536757

>>64536676
because a method, contrary to a procedure, has 'self' to which encapsulation doesn't apply.

>>64536665
objects are not necessary defined by a class (prototype, closure, message).

>> No.64536762
File: 70 KB, 1280x720, .jpg [View same] [iqdb] [saucenao] [google] [report]
64536762

im using mallocy linked lists with allocated cstrings in them in a 2k microcontroller and no one can stop me!!!!

>> No.64536795

>look mom i posted it again haha!

>> No.64536799

>>64536757
>objects are not necessary defined by a class (prototype, closure, message).
This is completely irrelevant. You don't understand what encapsulation is, or what breaking encapsulation means. Please don't spew your absolutely delusional nonsense in front of beginners.

>> No.64536813

>>64536762
using up all those 2k could stop you

>> No.64536872

>>64536799
>This is completely irrelevant.
its relevant since your definition involve class level scoping which make it unsuitable for the general concept of method.

>You don't understand what encapsulation
encapsulation is giving accessibility rules to attributes but a method breaks those rules; it doesn't care if a attribute has been declared as private or not, it has specific semantics to ignore encapsulation.

this is PLT 101.

>> No.64536885

>>64536813
whenever it uses more than 256 bytes i just busyloop until the master slurps up the data
havent noticed any encroaching memory fragmentation yet
maybe ill replace it with a ringbuffer lol

>> No.64536926

I have seen some functions which when they need to turn off or on some options like

Blah(bool light, bool output, bool shit)

then instead of using a bunch of bool parameters like that they like use some weird shit and save it into 1 something like

1 << 3 & 1 << 4
what is that shit?

>> No.64536941

>>64536926
a bitmask?

>> No.64536948

>>64536636
You can get notepad++ which has some features (like syntax highlighting) but doesn't autocomplete everything for you.

You can change your input string into an array, then change your character and retransform it into a new string.

var input = "abcdefg";
var myarray = input.split(""); // creates an array from your string
myarray[0] = "A"; // you change whatever you want
myarray[6] = "G";
var newstring = myarray.join(""); // creates a string from an array

>> No.64536962

>>64536872
>your definition involve class level scoping which make it unsuitable for the general concept of method
I wasn't giving you any definitions. I was pointing out to you the irrefutable fact that method implementations are part of the class definition (assuming class-based OOP) so it's fairly self-evident that their mere existence doesn't break encapsulation as you claim.

>encapsulation is giving accessibility rules to attributes but a method breaks those rules
No, you fucking retard. You don't understand what encapsulation means, so naturally you don't understand what does or does not break encapsulation. The bottom line is that you should shut your hole and stop poisoning the minds of beginners with your delusions.

>> No.64536988

>>64536926
Bitflags

>> No.64536993

What are the best short courses/ qualifications you can get for under a couple of thousand bucks? - things that are worth putting on your cv.

I was thinking ISTQB/ Linux Foundation Certified System Administrator (LFCS) /

>> No.64537007

>>64536988
but how does it work, that shit is even more confusing than magnets

>> No.64537015
File: 1.96 MB, 600x600, 1499476899617.gif [View same] [iqdb] [saucenao] [google] [report]
64537015

>was supposed to be writing a C compiler
>pushed it off to the last second
>it's due tomorrow

>> No.64537017

>>64537007
its alot more obvious if you write out the numbers in binary format like 0x00000010
means it only activates the second to last flag
while 0x11111111 activates all the flags

>> No.64537026
File: 31 KB, 640x1216, 1514761624906.jpg [View same] [iqdb] [saucenao] [google] [report]
64537026

>>64537015
>tfw to stupid too write c compiler

>> No.64537034

>>64537017
So let's say i wan't to set a 3rd zero from the left to 1 to use instead of a bool, how do i set it and then read it in an IF ?

>> No.64537043

I finally derusted my Python(2) skills and wrote a tool for my custom surfaces which imports them, extrudes them, and outputs them into industry standard CAD.

https://gist.github.com/aphirst/e21ff1a5360ae3b8cdc93ec4914f8ecd

>> No.64537058

>>64537007
Think of an integer as an array of bool, by using binary operators we can treat it like one.
#define set(a,i) a|(1<<i)
#define clear(a,i) a&~(1<<i)
[code][/code]

>> No.64537061

>>64537007
Let's say we have a byte. A byte has 8 bits: 00000000
Now we can store information/a bool in every bit. We have option1 which is set on the first bit and option2 which is set on the second bit, etc.

If we want to set option 1 and option 3 then our byte looks like this: 00000101

You can manipulate individual bits with bitwise operations

>> No.64537082

>>64537058
#define get(a,i) a&(1<<i)

>> No.64537087

>>64537061
And what if i need more than 8 bits?

>> No.64537104

>>64537087
unsigned long or something
unsigned long long

>> No.64537106

>>64537087
A byte is an 8-bit integer. There are usually 8, 16, 32 and 64-bit integers.

>> No.64537111

>>64537087
Use a larger type. You have uint_8/16/32/64 so more than enough.

>> No.64537192

>>64537087
>more than 8 bits

Why would anyone ever need more than 8 bits?

>> No.64537200
File: 441 KB, 940x589, AutoHotReload-940x589-1353116848.png [View same] [iqdb] [saucenao] [google] [report]
64537200

>>64536111
It is for game development, isn't it?

>> No.64537243

>>64536565
Ok, huh... Can you dumb it down a bit please ? I'm new to programming.

>>64536514
Same here :\ I though they only could be applied to the objects which are members of the class and... thats pretty much it..

>>64536497
Isn't an instance method and a static method the same thing ?

>> No.64537253

>>64537200
Not even that desu. If you watch any cppcon videos of game developers, you can just FEEL that they fucking hate c++ and their code uses only the C subset.

>> No.64537257

>>64537192
Not everyone is an ambitionless loser who his contempt with scraps a true man always desires a bit more than an inferior beta cuck male

>> No.64537275

>>64537257
I have no idea what you just said but it sounds to me like the ramblings of a virgin

>> No.64537320

>>64537253
retardo

>> No.64537341

>>64537200
C++, as a whole, is awful for game development. Gamedevs use it as a glorified C with basic templates, namespaces and operator overloading for vectors.

>> No.64537358

>>64537341
>>64537200
ignore this guy because he is retarded

>> No.64537411

>>64537358
He's right. Modern game engines are now data oriented, no more object oriented.

>> No.64537430

>>64537411
Good. C with templates, namespaces and (sane, arithmetic only) operator overloading is the only valid way to write C++.

>> No.64537445

Im working on a java project and im still really new to this so im stuck

I have a class that has a variable called token (int).

I have to create multiple instances of said class and print out all the token values from each one.
I know I can just go into main and do a for loop but how can I make a method inside the class to take all of them and print their token values?

>> No.64537472

>>64537341
What the fuck indie blog post did you read that load of bullshit on?

>> No.64537489

>>64536399
hasklol:
kebabToSnake = map (\x -> if x == '-' then '_' else x)

>> No.64537499

>>64537445
It needs to be a static method. You need a static field which is a list of all the tokens. Every constructor should add the object to the static field.

Note that doing this will cause the garbage collector to no longer collect tokens.

>> No.64537502
File: 698 KB, 680x454, 1517248557177.gif [View same] [iqdb] [saucenao] [google] [report]
64537502

>>64537430
woah, a sensible post, in my /dpt/??

>> No.64537519

>>64537472
https://www.youtube.com/watch?v=rX0ItVEVjHc

>> No.64537555

>>64537519
Data-oriented doesn't mean you're using C++ as C. Generally when it comes to video games it means you're using C++ to build the engine then feeding scripts (aka data) into a built-in interpreter to control aspects of the game logic.

>> No.64537570

>>64537499
would it just be easier to initialize each object inside of an arraylist instead of on their own

and then just use the getToken method on each one inside the arraylist?

>> No.64537576

>>64537472
not him but all the aaa engines are moving to data oriented because of multi threading and cache load optimization.

object oriented

entity1 = object{ life, origins, ...}
entity2 = object{ life, origins, ...}
entity3 = object{ life, origins, ...}
...

data oriented

life = array{enity1, entiti2, entity3, ...}
origins = array{enity1, entiti2, entity3, ...}
...

>>64537555
you are confusing data oriented with data-driven.

>> No.64537582

>>64537555
>just going off the title
Watch the video and he'll be dropping comments on how his indie game shop uses C++.

>> No.64537633

>>64537576
>keeping objects in an array means it's not object oriented

Confirmed retarded as fuck. That's also a microoptimization to improve cache usage applied in certain systems after profiling shows that optimization is needed. Guess what, you sacrifice abstractions for low level performance optimizations in every language when needed, it doesn't effect your overall design.

>> No.64537750
File: 58 KB, 240x240, 1517017690992.png [View same] [iqdb] [saucenao] [google] [report]
64537750

Hey, what program language should I learn if:
I use GNU/Linux
I took a Java basics class for high school
I like free software

>> No.64537752

>>64537633
There's no objects in data oriented design you retard. There's no virtual anything, no inheritance, no polymorphism, and most importantly no messages.

>> No.64537757

>>64537445
>I know I can just go into main and do a for loop
Why is this not sufficient?

>> No.64537793

>>64537750
Why do you want to learn it ?

>> No.64537821

>>64537793
So i can code myself a GF

>> No.64537827

>>64537793
To eventually get a job in the future, I'll probably learn more languages later so it doesn't necessarily need to be the best one for a workplace, just one as a starting point

>> No.64537843

>>64537821
this isn't me btw

>> No.64537849

>>64537757
im submitting it for my SE class (201) and we're taught not to have any methods inside main (as much as possible).

I ended up using an arraylist of the object and overwriting the toString to instead output the token number and it works great.

>> No.64537859

>>64537827
this isnt me btw

>> No.64537903

>>64537633
This is not a micro optimization at all. it has consequences on the whole architecture of your game engine. Data oriented allows modules to work independently. For example, the collision module only cares about the arrays holding all the positions and hitboxes. A data oriented engine would necessary rely on components.

The engine developer from naughty dog explains this well in his book (but he calls that object-centric view vs property-centric view)

>> No.64537905
File: 113 KB, 720x960, 1516658489470.jpg [View same] [iqdb] [saucenao] [google] [report]
64537905

>>64537859
Stop that.

>> No.64537928

>>64537821
>>64537827
Python is a good starting language.
It's used in FOSS. It's not difficult to find a job with it.
And there is plenty of IA modules to code your self a chatbot.

>> No.64537987
File: 497 KB, 800x425, Never-Give-Up.png [View same] [iqdb] [saucenao] [google] [report]
64537987

>>64537821
If you get the basics down you can implement ELIZA in maybe 40-150 lines of code (depending on the language). I believe in you anon, you can do it!

>> No.64538029

>>64537928
Python is a terrible starting language. C is a much better start where one is forced to understand what they are doing.

>> No.64538056

>>64538029
C has now ignored more than 50 years of PLT. there is nothing to learn from that obsolete programming language.

>> No.64538093

>>64537928
>>64538029
>>64538056
fuck, this is why I have no idea what I should learn. Every time I ask on /g/ everyone just seems to give different answers.

>> No.64538112

>>64538029
I disagree. C doesn't force you to know anything not required by python, except the memory management.
But with the same logic, you could say C is a terrible starting language compared to ASM, because you doesn't need to know what a CPU instruction is.

>> No.64538118
File: 117 KB, 971x280, best advice.png [View same] [iqdb] [saucenao] [google] [report]
64538118

>>64538093

>> No.64538120

Godot 3.0 released. Currently making a Monkey Ball clone to test it out.

>> No.64538131

>>64538118
I've seen this before, this is literally my situation

>> No.64538144

>>64538093
if you become any good at programming you will eventually learn both C and Python
so it doesn't really matter if you're in it for the long haul
you could start with python because it's easier
or you could start with C if you prefer to learn the hard stuff right away
up to you

>> No.64538163

>>64538144
how is C hard vs having to learn the 1 bazillion languages features of python
C is easymode
C is like 10 things

>> No.64538179

>>64538144
Which would be more useful for me right now though? And what are some cases where Python would be more efficient to use over C and vice versa?

>> No.64538184

>>64538163
most of the stuff is exactly the same with different syntax because a new person will write procedural code either way
it literally makes no difference for writing simple programs

>> No.64538190

>>64538093
The truth is, there is no good answer.

C is low level compared to Python. It's more difficult, and it takes more times to do something in C than in Python.
It's advantages are a far better control over memory, and far better performances.

There is no ideal first language. Takes one, and stick to it.
Python if you want to see fast result (other than a few words in the console). C if you're not afraid to send an insane amount of time.

C will gives you a better understanding of how hardware works, compared to Python.

>> No.64538191

>>64538120
Hmm neat. Monkey Ball doesn't seem too hard to implement after you have collision detection down. I have a 3d engine with collision detection lying around... Thanks for the idea anon.

>> No.64538201

>>64538131
throw a coin and start

>> No.64538202

>>64538179
if you want to maximize hardware output, pick c
if you want to minimize programming time, pick python

>> No.64538218

>>64538184
learning to program is different to learning a language
learning C takes like 3 days and one 120 page book
learning python takes forever and theres version wars and a humongous standard library and youll make everything slow as shit and wont understand why from being confused by which features to use at any moment

>> No.64538220

>>64538202
What if I don't really care about either of those?

>> No.64538229

>>64538112
from sicp:

"""
Our design of this introductory computer-science subject reflects two major concerns. First, we want to establish the idea that a computer language is not just a way of getting a computer to perform operations but rather that it is a novel formal medium for expressing ideas about methodology. Thus, programs must be written for people to read, and only incidentally for machines to execute. Second, we believe that the essential material to be addressed by a subject at this level is not the syntax of particular programming-language constructs, nor clever algorithms for computing particular functions efficiently, nor even the mathematical analysis of algorithms and the foundations of computing, but rather the techniques used to control the intellectual complexity of large software systems.

Our goal is that students who complete this subject should have a good feel for the elements of style and the aesthetics of programming. They should have command of the major techniques for controlling complexity in a large system. They should be capable of reading a 50-page-long program, if it is written in an exemplary style. They should know what not to read, and what they need not understand at any moment. They should feel secure about modifying a program, retaining the spirit and style of the original author.
"""

pick a programming language suited to learn programming concepts (C isn't)

>> No.64538274

>>64538218
>learning python takes forever
1. start the repl
2. type code
3. ???
4. enjoy

meanwhile with c:

1. learn how to compile
2. learn how to include (needed for printf/puts)
3. learn what is main -> learn what is a procedure
4. learn what are types
...
∞. learn how ...
∞+1. finally execute your first program.

>> No.64538290

>>64538220
what do you care about?

>> No.64538335

>>64538290
I just want to learn how to program, nothing really in particular :/
I'd also like to know a good way to learn that programming language, be it a book or website, but I would have to figure out what language I'm going to learn before I get into that

>> No.64538345

>>64538118
>>64538131
the easiest way out of this is to discern between shit authors and good authors, but first you need metrics
tip: 99% of book writers are mindless idiots, even in the programming world

>> No.64538361

>>64538335
just do code academys python course until you get bored or decide you like it
and then learn c and read K&R

>> No.64538363

>>64538345
so, what should I learn from then?

>> No.64538382

>>64538335
python is fine then
https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-11
https://www.edx.org/course/introduction-python-absolute-beginner-microsoft-dev236x-1
these are free

>> No.64538383

Why do so many drone on about Rust? It's brought nothing new other than being another messy language using C syntax mixed with ML.

If you really want performance and abstraction then ATS2 is much better. Want pointer safety? Linear types. Want resource tracking? That's what they do. Want it to be "compile and I know it's correct"? Make use of it's dependent types.

Why bother with a language that works so hard to make everything black magic and a fight against the type system when Dependent and Linear types exist in one which also uses unboxed types.

Do we have to wrap everything in an unsafe block? No, direct pointer manipulation is allowed since the type system can handle that too.

>> No.64538392

>>64538335
do the htdp racket course on edx

>> No.64538412

>>64538361
I feel like it would be kinda inefficient to just switch between languages like that though
>>64538382
Thanks, I'll check these out
>>64538392
got a link for this?

>> No.64538455

>>64538383
ats has pretty fucking ugly syntax
>[email protected]

>> No.64538461

>>64538412
>got a link for this?
here the complete course https://www.edx.org/micromasters/software-development

1&2 you learn the basics using racket
3&4 you learn oop with java
5&6 you learn development techniques used in enterprise (agile) with typescripts

after doing this course, you should have a solid base to start your career.

>> No.64538480

>>64538461
like I said before, I think I'd rather just focus on one language rather than jump back and forth like that

>> No.64538513

>>64538480
your programming skill is more important than the language

>> No.64538517
File: 4 KB, 183x250, 1517329088290s.jpg [View same] [iqdb] [saucenao] [google] [report]
64538517

post your GitHub

>> No.64538524

>>64538480
the programming language is irrelevant, it's what you will learn that truly matters. if you can't realize that, you shall better drop programming right now.

>> No.64538535

>>64538455
It's actually >[email protected]

>> No.64538552

>>64538461
How good is the Racket portion?

>> No.64538558
File: 174 KB, 800x388, 1401194922988.jpg [View same] [iqdb] [saucenao] [google] [report]
64538558

>>64538517
>tfw no github

>> No.64538559

>>64538513
>>64538524
I guess you're right
So which one of these should I start with? >>64538461 >>64538382

>> No.64538570

>>64538552
it's htdp.
https://en.wikipedia.org/wiki/How_to_Design_Programs

>> No.64538590

>>64538558
>create account
>search for "he", "his", "man" and replace with "they", "their", "person"
>instantly 4000 commits and 500 contributions

>> No.64538606

>>64538363
Wrong question, answer denied. Try again later.

>> No.64538663
File: 65 KB, 359x347, pleasereply.png [View same] [iqdb] [saucenao] [google] [report]
64538663

>>64538606
what did I do wrong this time

>> No.64538680

>>64538517
you first

>> No.64538689

>>64538383
>Why do so many drone on about Rust?
Mixture of idiotic fanboi faggotry and unawareness of what other programming languages actually do.

>> No.64538703

>>64537576
learn about AoS vs SoA before making another argument

>> No.64538729

>>64537253
>>64537341
that's bullshit. they often avoid things that incur runtime overhead (like dynamic dispatch/virtualization), but the majority of C++ features don't when used competently. and even if you arbitrarily limited yourself to using an extremely select handful of C++ features and were using it as a "glorified C", it'd still be far better than using C, so i don't know what your point is supposed to be. you're supposed to pick and choose features based on your use case and priorities anyway, that's a core principle of the language. as for game devs, a big part of the problem is that a lot of dev companies limit their codebases to old standards (sometimes even fucking C++98 - not kidding), meaning they're screwed out of the many new features that facilitate high-level code while retaining efficiency. half the fuckers don't even know the new features because they don't need to for work

>>64537519
Acton makes some good points here and there, and data-oriented design is very often the way to go, but he's also autistic as fuck and irrationally paranoid. he'll ban features in his teams not because they actually incur overhead when used correctly, but because he's afraid people will use them incorrectly. that just perpetuates the problem. if i'm not mistaken, i seem to remember him saying his team doesn't even use templates. that is absolutely fucking retarded. his competence is seriously questionable in some respects, and it figures that similarly ignorant people have latched onto this video

>>64537633
cache optimization is by no means microoptimization. retrieving a value from memory takes orders of magnitude longer than retrieving it from the cache

>>64537752
simple data structures (POD/standard layout types) are still objects, dumbass. also, you can have costless/standard layout inheritance (empty base optimization). and there's such a thing as static polymorphism. none of this is inherently mutually exclusive with data-oriented design

>> No.64538730
File: 85 KB, 500x492, 415.png [View same] [iqdb] [saucenao] [google] [report]
64538730

>>64538590
Bonus points for opening issues to change projects that use OOP principles to purely functional ones since parent-child relationships are purely a social construct, which is problematic

>> No.64538772

>>64538703
I don't get it. those are data structure design techniques. data oriented is about the architecture of your program. a good comparison would be a relational database.

>> No.64538799
File: 835 KB, 2560x1440, 1515996459882.jpg [View same] [iqdb] [saucenao] [google] [report]
64538799

>>64537928
>there is plenty of IA modules

There is only 1 IA in this world and she is the true goddess

>> No.64538838

How do I write this?

struct Circle
{
double x, y;
double radius;
};


I want to write something that will read a series of circles and initialize them as Circle c1, Circle c2, etc..
I can't really figure out how to do this, can someone point me in the right direction?

Circle make_circles()
{
double x, y, r;
cin >> x >> y >> r;
struct Circle {x, y, r};

}


I think I need to iterate the circle-making, and change some syntax with that as well?

HELP please I don't understand this shit

>> No.64538842
File: 6 KB, 156x137, erlang-logo.png [View same] [iqdb] [saucenao] [google] [report]
64538842

first for erlang

>> No.64538849

Maybe you guys can help me out.
Is there any way to make a visualization (text is fine) of the machine code for a given program?
Nothing too complex obviously, just something simple like a Java "hello world" print statement.

Thanks in advance

>> No.64538871

>>64538729
>simple data structures (POD/standard layout types) are still objects
>plain old data types are still objects
>data types are objects

An object is a data abstraction technique where the said data (the attributes) is hidden behind a set of operations (the interface). Alternatives to objects are data types (POD), abstract data types, ...

>> No.64538873

What's the quickest way to refresh my programming skills? I can't even remember simple sorting algorithms. I haven't practiced much coding outside of class and I'm rusty, do you anons know any good resources to bring me back up to speed?

I'm going to be graduating soon and need to be ready for interviews, I'm sure it will all come back to me once I get into it again. r-right? Honestly I don't know how I made it 4 years into a CS degree but I did so I need to stop being a lazy piece of shit and start programming again

>> No.64538899

>>64538838
like this?
Circle[] circles = malloc(sizeof(Circle) * 3);
Circle* c1 = circles[0];
Circle* c2 = circles[1];
Circle* c3 = circles[2];
// initialize data...

this also probably isnt exactly correct C code

>> No.64538916

>>64538873
>What's the quickest way to refresh my programming skills?
programming. Go to project euler and do some of the simpler challenges or lookup other programing challenges. If you forget how to sort something then just find it on stackoverflow.

>> No.64538940

>>64538899
no need to malloc here

>>64538838
There is a missing "return". Currently, your function returns nothings: the last line create a temporary Circle ... and that's all.

>> No.64538943
File: 14 KB, 478x523, d04.png [View same] [iqdb] [saucenao] [google] [report]
64538943

>>64538729
>simple data structures (POD/standard layout types) are still objects,
The absolute state of POO monkeys... when your paradigm turns out to be an utter failure, just redefine it to swallow everything that works. Alternatively, make sure it's never well-defined in the first place to ensure anything of value ever created could be portrayed as part of it.

>> No.64539017

>>64538849
You mean like the assembly instructions? You can compile using clang into LLVM IR which is like assembly and be read easily.

>> No.64539023
File: 62 KB, 961x416, 1509805001354.png [View same] [iqdb] [saucenao] [google] [report]
64539023

>>64537750
Any language that's not tied to harmful companies like Microsoft or Apple.

>> No.64539031

>>64538943
what's the ideal paradigm, memester?

>> No.64539044

>>64539031
>it's either """ideal""" or POO

>> No.64539080

>>64539031
the one that you are the most comfortable with.

>> No.64539089

>>64539080
>the one that you are the most comfortable with.
Code-monkey-tier thinking right there.

>> No.64539098

>>64539089
Explain your reasoning.

>> No.64539104

>>64538838
struct Circle
{
double x;
double y;
double r;
Circle(double ix, double iy, double ir) : x{ix}, y{iy}, r{ir}
{
}
};

Circle make_circle()
{
double x, y, r;
bool invalid;
do
{
try
{
std::string in;
invalid = false;
std::getline(std::cin, in);
x = std::stod(in);
}
catch(std::exception & e) {
std::cerr << e.what();
invalid = true;
}
}while(invalid);
do
{
try
{
std::string in;
invalid = false;
std::getline(std::cin, in);
y = std::stod(in);
}
catch(std::exception & e) {
std::cerr << e.what();
invalid = true;
}
}while(invalid);
do
{
try
{
std::string in;
invalid = false;
std::getline(std::cin, in);
r = std::stod(in);
}
catch(std::exception & e) {
std::cerr << e.what();
invalid = true;
}
}while(invalid);
return Circle(x, y, r);
}

>> No.64539127
File: 490 KB, 742x800, VHyb4Ww.png [View same] [iqdb] [saucenao] [google] [report]
64539127

>>64538799
This thread needs more IA

>> No.64539153

>>64539023

I really enjoy using LINQ methods though.

>> No.64539154

>>64539098
>Explain your reasoning
I explained it about as well as you explained yours, but I'll bite: being "comfortable" with bad/ineffective practices doesn't make them any good, and in the long run, you're better off getting comfortable with something that isn't POO.

>> No.64539229

>>64539023
if (microsoftMade) {
putTelemetry();
}

>> No.64539232

>>64538871
>>64538943
>In computer science, an object can be a variable, a data structure, a function, or a method, and as such, is a location in memory having a value and referenced by an identifier.
>In the class-based object-oriented programming paradigm, "object" refers to a particular instance of a class where the object can be a combination of variables, functions, and data structures.

and in terms of C++ (which the discussion was in the context of):
>An object, in C++, is a region of storage that has:
>size (can be determined with sizeof);
>alignment requirement (can be determined with alignof);
>storage duration (automatic, static, dynamic, thread-local);
>lifetime (bounded by storage duration or temporary);
>type;
>value (which may be indeterminate, e.g. for default-initialized non-class types);
>optionally, a name.

>The following entities are not objects: value, reference, function, enumerator, type, non-static class member, bit-field, template, class or function template specialization, namespace, parameter pack, and this.

just because optional/extended functionality for things like dynamic polymorphism is available in object-oriented languages doesn't mean an object's nature as an object is contingent upon use of such functionality

>> No.64539285
File: 7 KB, 251x201, brainletism.png [View same] [iqdb] [saucenao] [google] [report]
64539285

>>64539232
>an object can be a variable, a data structure, a function, or a method, and as such, is a location in memory having a value and referenced by an identifier
>and as such, is a location in memory having a value and referenced by an identifier
> a location in memory having a value and referenced by an identifier
Literally confirms >>64538943. Sorry, anon, but calling something "an object" doesn't mean anything. Objects have nothing to do with POO.

>> No.64539286

>>64539232
Can be does not mean is retard. An object >>IS<< something with attributes which interacts with other objects by passing messages to other objects, in java/C++ terms, calling other object's methods.

Data oriented design specifically tries to avoid message passing as a central fucking dogma because it doesn't play nicely with cache optimization.

>> No.64539309

>>64539286
>arguing with retarded label-thinkers
Data oriented design is OOP because a location in memory having a value is an object, anon. Wikipedia says so. Check-mate.

>> No.64539320

>>64539104
surely you could use a short loop or something

>> No.64539383

So guys I have this idea for a new secure and private messaging service and I want to know if this has been attempted before.

It would work like is:
There is a pool of users (lets say 1000), each has public/private key, they are all connected to a server.
User A wants to send encrypted message to user B (A knows public key of B).
What happens now is that A sends an encrypted message to the central server and it does not provide recipient address.
Central server forwards the message to all other users in the pool.
Each one of them try to decrypt it, all of them (but one, the intended recipient) fail to decrypt so they discard a message. The intended recipient decrypts the message.
Another part of this is that random messages with gibberish data are sent randomly at random intervals to confuse any eavesdroppers.


Now I understand that messages would be limited in size so it would mostly contain text and maybe very little data so as not to overload the networks and clients.
So what do you, this could be an ultimate private communication solution, however my programming skills arent that great and is it worth getting into it and investing my time and money or is it a stupid idea that has been tried before (and failed)?

>> No.64539403

>>64539285
>Objects have nothing to do with POO.
that's precisely my point you fucking retard. OOP adds extended functionality *oriented* around objects; it doesn't claim to be the origin of objects, and never did. objects were already a well-defined concept, and certainly nothing's been "redefined", dumbshit

>>64539286
telling yourself that doesn't make it true you fucking sperg moron. nothing you're saying refutes the reference material i quoted. i know what data-oriented design is, and to be very clear i didn't say anything about object-oriented design. i'm talking about objects. see above. there's a difference between an object and object-oriented features/design

>> No.64539417

I need to use something like a hash table, that is, to map two values together. The problem I have is that a hash table can only have unique keys, and I need a "key" to be mapped to multiple possible values. What can I do? Using Java btw.

>> No.64539418

Does anyone know of some sort of roadmap for programming projects? As in projects ranging from easy to hard where you should do in order? Most of the time I look up a project for practicing, it's either too easy, too hard or not interesting at all, and maybe sticking to an order might be better for me.

>> No.64539428

>>64539383
>There is a pool of users
stop
>Each one of them try to decrypt it
why
>Another part of this is that random messages with gibberish data are sent
stop

You're adding unnecessary work and tedium to a pretty straight forward concept.

>> No.64539463

>>64539383
That's actually a really cool idea. Might have been done before but perhaps not. But you need to make sure its the clients that generate gibberish.

>>64539403
Nice attempts to be a lawyer anon. We were talking about OOP vs DOD. An "object" in the context of such a discussion is indeed an OOP object. Without context an object could really be anything. It could be a rock.

We both know that you weren't careful about anything. This is just your attempt to save face.

>> No.64539480

>>64536085
I'm working on where to start. I gave up on computers in '85 and now I'm at the point where "aww shit" hits me everytime I try to find the Derp Level. I have no idea what I'm doing or wear to start.

>> No.64539481

>>64539320
Yes it's possible to make an array of double with 3 elements, then use a loop to assign each element and create the circle with the array
But the end code will be very similar to that because of compiler's loop unrolling optimization.

>> No.64539495

>>64536178
>why is this error?
Wanna know how I know you're a curryfucker?

>> No.64539498

Is there any way to solve diamond inheritance problem other than remake multiple class for each parent?

>> No.64539518

>>64536300
This. Take your EE elsewhere too

>> No.64539529

can you program a game using ladder?

>> No.64539536

>>64539498
Yeah there's a pattern where instead of inheriting, you have an object of each "parent" as a field. Think it's called composition.

>> No.64539537

>>64539383
You literal watched the facebookmovie opening scene like 10minutes ago

>> No.64539550

people(SO) always say globals are bad
but what about static in headers?

>> No.64539569

>tfw got email from microsoft basically telling me to fuck off with my freetard shit

>> No.64539576

>>64539463
Yes. Lets say an app on phone or a program running on pc automatically generates fake messages at random times

>>64539428
so that it cannot be traced to who send the message and who the recipient is. Everyone get a message but only the right person is able to decrypt it, if there are 10000 users and all get the same message it impossible to find out who the intended recipient is.

>> No.64539587

>>64539569
screenshot?

>> No.64539589

>>64539569
post it senpai

>> No.64539592

>>64539537
no I dont watch TV, and I wouldnt watch anything that has facebook in it

>> No.64539608
File: 71 KB, 627x476, ZtIIBZk.png [View same] [iqdb] [saucenao] [google] [report]
64539608

How many run Haskell?

>> No.64539615

>>64539608
3 dozen

>> No.64539631

>>64539608
Mine, so at least one.

>> No.64539654

>>64539587
>>64539589
I don't want to be identified

>> No.64539677

>>64539654
censor out personal information moron
>inb4 no I can't take any chances
then you lied about getting the email in the first place

>> No.64539679

>>64539576
I recommend using a poisson process to generate random messages. Basically send a random message with this interval:

let x be a random number in (0,1]
let k be the interval of sending messages
time = - (ln x) / k

t. molecular chemist

>> No.64539686

>write my own ui
>buttons are keyboard navigable
>but only if they are all children of the same parent controls
>and any nonbutton sibling in this collection softlocks the program if it gets focus
Any ideas on how I can improve this? I extend List to create a ControlCollection class and override Add to assign the parent control any time a control has a child added to it, maybe when I'm doing that climb the hierarchy to the form and add the button to a list of buttons that gets special keyboard handling. Is that retarded?

>> No.64539695

>>64539383

Unfortunately this doesn't really scale, you could separate clients into pools and require the sender provide the pool of the client the message is intended for - you can estimate how much work each client has to do based on the maximum number of users in a pool and some rate-limiting by the server. Actually, the size of the message wouldn't really matter if you use a CBC mode for encryption since any client can just check whether it is able to decrypt the first block and ignore any further ones.

>> No.64539696

>>64539654
software about what?

>> No.64539702

>>64539383
kind of doesn't work
let's say somebody is trying to find out if person A is contacting person B, so they are watching them
one day both of them happen to be on this very small network at the same time for a very short time
during which time a couple of messages are exchanged and they both log off
what would that look like to you?

>> No.64539708

>tfw got email from richard stallman telling me to fuck off with my proprietary shit

>> No.64539709

>>64539686
java?

>> No.64539723

>>64539708
>>tfw got email from facebook telling me to fuck off with my open source social media

>> No.64539724

>>64539702
but random messages are constantly being exchanged by all clients; and its impossible to tell if its a valid message for someone else or a message not valid for anyone

>> No.64539725

>>64539708
Somehow this one seems more believable

>> No.64539734
File: 342 KB, 714x738, 1421164417027.png [View same] [iqdb] [saucenao] [google] [report]
64539734

Employed Idris programmer here

>> No.64539735

>>64539709
C#

>> No.64539745

>>64539724
just them being in this same small chat client together at the same time tells you all you need to know
it's like if they both happen to check under the same park bench on the same day a few minutes apart

>> No.64539752

>>64539745
the idea is they're always connected you baka

>> No.64539756

>>64539734
working on anything interesting, lad?

>> No.64539758

>>64539756
my suicide note

>> No.64539764

>>64539745
maybe if you dont use the software as intended then people can garner some small information then

>> No.64539772

>>64539758
can i fork it?

>> No.64539792
File: 631 KB, 1280x720, 1495363534534.png [View same] [iqdb] [saucenao] [google] [report]
64539792

>tfw suicidal functional programmer can't kill himself because that would mutate state

>> No.64539793
File: 1.14 MB, 250x250, sensible.gif [View same] [iqdb] [saucenao] [google] [report]
64539793

>>64539756
>>64539758
>>64539772

>> No.64539796

>>64539758
i said interesting.

>> No.64539823

>>64539792
Not, the idris programmer can just make suicide a controlled effect.

>> No.64539843

>>64539752
but the pool of people is too small
perhaps if it's something that's on a hundred million peoples phones it would work better
but not if you have to go into a specific pool of 1000 people to get a certain persons message, because then you have the same issue again

>> No.64539869

The more I learn about elisp, the more I like it over c++, maybe it's just the aesthetics.
Why is this the case? Non meme answers only please.

>> No.64539874

>>64539695
yeah thats what I am worried about, a thousand users sending even one message in lets say 5 minutes will create a at least couple of MB that all other users have to download, and then those users have to send their messages as well...

>>64539702
its kind an always on service, if you log out and there is message for then its gone
if both persons are being watched then they are compromised already

>> No.64539878

>>64539677
How can I be sure some autist isn't going to find me through conversation details?

>> No.64539886

>>64539869
elisp is the halfway point between scheme and common lisp.
but it takes the worst of both. so if you like it perhaps you should try a less shitty lisp.

as for why you like it? perhaps its the freedom of lisp, perhaps its the whole "living editor" aspect of emacs that lets you peek and poke at anything running in it.

>> No.64539909

>>64539886
>But it takes the worst of both

What do you mean? Some features like property lists are unaesthetic as fuck is this what you are referring to?

>> No.64539915

>>64539878
are you scared of an autist?

>> No.64539965

I have a char[] text that's length is 7360. What is faster?

string output = new string(text);

or
StringBuilder builder = new StringBuilder();
...
builder.Clear();
builder.Append(text);

>> No.64539985

>>64539965
Top.

StringBuilders are for if you don't know the length of a string ahead of time. Or if you're joining multiple character streams together.

>> No.64539986

>>64539965
Asking for a 2 page mmap from the OS.

>> No.64540003

>>64539869
Because C++ is honestly pretty terrible language in terms of programmer experience and 99% of what you might think you like about it are just things about programming in general you like or Stockholm Syndrome.

>> No.64540033

>>64539985
>>64539986
Asking this and reading your responses made me realize that I don't even know why I was turning the char[] into a string or stringbuilder. I can just do Console.Write(char[]); because a fucking string literally is a char[]. I feel so dumb.

>> No.64540039

>>64540033
>sepples programmers

>> No.64540065
File: 1.57 MB, 958x1558, rr9msfcy72uz.png [View same] [iqdb] [saucenao] [google] [report]
64540065

What's the difference between `git push` and `git push origin master`

Also I know `master` is the name of the branch. But what does `origin` mean?

>> No.64540067

>>64540039
I'm not good enough at C# to be an indoctrinated OOP cuck. I don't even use interfaces or like half the keywords in the language.

>> No.64540073

>>64539153
>/g/ discovers range manipulators

>> No.64540079

>>64540065
"origin" is just the name of the remote you're pushing to. You could have named your remote anything, but most guides tell you to name it "origin." You can also have multiple different remotes that you can individually push to. Like one to a locally-stored repository or a zip drive or whatever.

>>64540033
And, unfortunately, since strings are immutable and char[] isn't, new String( char[]) will copy the char[] instead of just referencing it so that it has a copy that previous owners can't edit.

>> No.64540106

>>64540065
>What's the difference between `git push` and `git push origin master`
Check out this stackoverflow question that is word for word exactly the same
https://stackoverflow.com/questions/12462481/what-is-the-difference-between-git-push-origin-and-git-push-origin-master

In older versions of git, "git push" pushed all your branches. If you only wanted to push the master branch you'd specify "git push origin master"

"origin" is an alias for the name of the remote repo. you can replace it with the URL for the repo but that's annoying so people use origin instead.

>> No.64540108

Will reading the art of programming make me a good programmer

>> No.64540113

>>64540073
All you need is map and filter.

>> No.64540114

>>64540108
It sure can't hurt

>> No.64540129

>>64540079
Thanks one more thing.
So during SDLC, there are two kinds of pushes: bugfixes and feature stabilization. So how does version releasing work in git?

For example, how can I entitle a certain commit to be release version X.0?

>> No.64540141

Will reading /dpt/ make me a good programmer

>> No.64540143

>>64540129
There are probably multiple ways to do it, but it's usually done with tagging:
https://git-scm.com/book/en/v2/Git-Basics-Tagging

>> No.64540170

Sorry for kind of spamming the thread with questions but I have another piece of code that I need help with. I'm talking in the string and basically replacing an area in the char[] with the contents of the string. The char[] is a buffer for the writable screen area in the console window. I'm sure what I'm doing is retarded in some fundamental way. I cut out the exception handling code.

internal void Print(int left, int top, string text)
{
if ((left >= 0 && (left + text.Length) <= width) && (top >= 0 && top <= (height)))
{
for (int i = 0; i < text.Length; i++)
{
screen[(left) + (top * width) + i] = text[i];
}
}
}

>> No.64540175 [DELETED] 
File: 164 KB, 1660x1612, Untitled.png [View same] [iqdb] [saucenao] [google] [report]
64540175

>>64539915
I am terrified of weaponized autism. My heart is racing posting this.
>>64539677
>>64539696
>>64539589
>>64539587

>> No.64540180

>>64540141
You'll be really good at writing fizzbuzz in meme languages

>> No.64540219

>>64539023
>dotnet
more like >botnet

>> No.64540244

>>64540170
This is C# right? I believe string has a "CopyTo" method which will do an system copy which will be faster than a for loop. If it's not C# I'm sure it has some equivalent method anyway.

Also you're not allowing for partial "printing" of the string to the "screen." I don't know if this is by design or an oversight.

>> No.64540250

>>64536085
Why is smalltalk's syntax so horrible /g/?

In every other OOP language, I can write nice functional pipelines, i.e. x.foo().bar(y).baz(z,w) and so one. In smalltalk, you can write something like

x foo bar baz
but you can't chain messages with multiple arguments. This is basically as stupid as it possibly gets.

In Lisp you have to introduce parentheses as well, but that isn't an issue because you can just use the threading macro or any other custom syntax you may want. If you look at smalltalk stack overflow answes about this on the other hand, you get something like "instead of bending smalltalk syntax to your will, consider bending to smalltalks will". So the only option is to suck it up and bend over.

>> No.64540255

https://youtu.be/4FbQre9VQLI

>> No.64540262

>>64540250
>why can't i write my code in a paradigm that directly opposes the languages intended one

>> No.64540279

>>64540262
in all fairness most/all coders on /g/ do just that

>> No.64540283

>>64540250
Kek. Even Simula allowed this.Yet the wikipedia article about method chaining states that Smalltalk invented it, when it actually can't do it.

https://en.wikipedia.org/wiki/Method_chaining

I suddenly have a much lower respect for smalltalk programmers than I used to.

>> No.64540289

>>64540262
How the fuck does method chaining oppose smalltalks paradigm? It is very strongly encouraged and idiomatic for unary messages.

>> No.64540297

>>64540279
Well some decent languages allow for it, and mixing them isn't always bad if you know what you're doing. But yeah, trying to write functional sepples or JS is just being a baka.
>>64540289
method chaining conflicts with Smalltalk's POO. Also, why are you even using that shit in the current year?

>> No.64540314

>>64540170
Do what >>64540244 said, CopyTo exists, here's the reference
https://docs.microsoft.com/en-us/dotnet/api/system.string.copyto?view=netframework-4.7#System_String_CopyTo_System_Int32_System_Char___System_Int32_System_Int32_
Just be careful with indexes.

>> No.64540317

>>64540297
JS is functional though

>> No.64540327

>>64540317
functionally nonfunctional, yes.

>> No.64540332

I'm scared of your weaponized autism

>> No.64540340

>>64540332
than you never got the email faggot

>> No.64540341

>>64540244
I'm basically using a Print function in a separate class that's public and then printing to the buffer which is an internal class in the library. So any partial printing or formatting I'm designing it to be done before calling the print method. This might be bad design though, it just seemed like the simplest solution. This is my first time ever making a library and I'm doing it for myself to get practice. I'll try the method you suggested though, and yes it is C#. Also I just figured it would be good design to not let the buffer be directly accessible by anyone using the library since its not designed to be fucked with. I'm basically making a library so that I can quickly make command console role playing games.

I'm focusing more on creating useful features for that specific purpose than designing the low level features to be modifiable and robust. For example I don't have the ability to set the window size directly, you have to select the size from an enum and I have the relative size of the window documented using XML comments. So later I know that "160 by 48" will fit a 1280 by 720 resolution monitor for example. Probably sounds retarded but I'll post it when I'm done and see what people think.

>> No.64540351
File: 1.72 MB, 500x522, tumblr_nz0jt3jM421sbzv20o1_500.gif [View same] [iqdb] [saucenao] [google] [report]
64540351

>>64540332
It's okay, everything will be fine.

>> No.64540362

>>64540317
No it isn't. It is less functional than Ruby or Python. It's utterly shit for FP, it's just also utterly shit at everything else.

>> No.64540369

>>64540297
But functional sepples is perfectly viable, and half of boost does just that.

>> No.64540370

>>64540362
is java decent for fp?

>> No.64540373

>>64540003
Name a few features of c++ that make it bad?

>> No.64540375

>>64540369
>But functional sepples is perfectly viable
Just because you can write it doesn't mean you want to.
That's why i hardly ever see it done.

>> No.64540383

>>64540370
no, its anything but functional

>> No.64540404
File: 173 KB, 1660x1612, fff.png [View same] [iqdb] [saucenao] [google] [report]
64540404

>>64540351

>> No.64540412

>>64540404
I don't get it

>> No.64540414

>>64540373
Well vtables for one. Its linking is pretty archaic and a fuck-huge headache for complex build projects. But mostly it's just the clusterfuck of syntax that comes with trying to keep modern while also preserving backwards compatibility. Things that modern languages do elegantly, C++ does it looking like Perl threw up on a complicated bash command.

>> No.64540424

>>64540414
When I program in C I use vtables all the time

>> No.64540431

>>64540404
Utterly disgusting. I hate this company more than anything in this world. If I was you I would post this everywhere because microshite is not honoring MIT license.

>> No.64540432

>>64540370
Hell no. Although it technically has tail-end, lazy-loaded execution structures similar to functional programming in the form of Java8 streams, the syntax is god-awful.

>> No.64540436

>>64540370
It's going to be verbose as fuck, but it has lambdas now and the collections API is reasonably functional-friendly.

Actually, fuck the smug smalltalk weenies, I'd rather be using Java or Kotlin (+ IDE ecosystem) than Smalltalk any day, and I'm saying that as someone who would otherwise hate Java as much as humanly possible.

CLOS is still the best implementation of OOP that I've seen. Smug lisp weenies at least still have some reason to be smug, even if most lisps do have some flaws and a lot of modern languages have adopted most of the good features of lisplikes. Smalltalkers on the other hand have no reason to be smug, honestly.

>> No.64540445

>>64540431
I'm embarrassed to even post it here. Also I'm pretty sure what's on their marketplace has nothing to do with how the software is licensed - they get the final say on what goes on there regardless of the license.

>> No.64540450

>>64540404
seems perfectly reasonable to me
submit the changes to them, if they decline them, then publish your own because they've given people no other choice

>> No.64540458

>>64540445
>embarrassed
why? you did nothing wrong.

>> No.64540460

>>64536085
can anyone help me with this webdev question? I didnt see the /wdg/ thread up.

I'm trying to download these jsfiddle files so I can play around with them on my local machine.

http://jsfiddle.net/derickbailey/s4P2v/

I copied the exact code displayed from that link in an index.html, script.js, and style.css files. But that alone isn't enough, I think you need to link the js file to the html file, and link the js file to jquerey. So I added these lines to index.html:

<script type="text/javascript" script src="node_modules/jquery/dist/jquery.min.js"></script> <!--get jquerey file -->

<script src="script.js" type="text/javascript"></script> <!-- get my javascript file -->


And jquery loads properly, but none of the javascript file is ran, console.log()'s in the script.js file dont even show up

>> No.64540464 [DELETED] 

I just want to have sex :(

>> No.64540480

Post your legs

>> No.64540482 [DELETED] 

>>64539608
More than 3 billions, Haskell executables are native.

>> No.64540512

Finished work before 10pm today, what the fuck is going on?

>> No.64540519

>>64540404
What happens when you publish it with a different name?

>> No.64540530 [DELETED] 

>>64540464
Where are you located?

>> No.64540787

>>64540460
put the js code on a function and call that function onload

https://pastebin.com/b7Tqx4yK

this works expect the Song Duration

p.s. replace the jquery path

>> No.64540796

>>64540460
>var duration = moment.duration(seconds, "seconds");

moment is not defined

>> No.64540817

>>64540796
ok found it

its a external resource

https://rawgit.com/moment/moment/2.2.1/min/moment.min.js

>> No.64540846

>>64540787
song duration is the one thing that I want. Is it impossible to get the same results from the jquery link on my local machine?

>> No.64540855

Pretend I am using a language or OS without an event construct already made up for me to use. What convention am I supposed to use to block until a value is returned? The only obvious thing that comes to mind is an infinite loop that checks if the value is there or not, then sleeps an arbitrary amount of milliseconds. Is polling arbitrarily the only way without some sort of hardware event? I guess I'm asking how are events implemented anyway?

>> No.64540856

If you enjoy programming as a hobby and want to continue enjoying it, my advice is not to get a job doing it.

>> No.64540885

>>64540856
I've known this for ages, it astounds me people still fall for it.
The only acceptable way is if you are in control of your own company.

>> No.64540898

>>64540856
i had a few passions and i decided that this was the one i was willing to give up

>> No.64540905

>>64540856
might be ok advice if you have at least one other thing you like and can get a job doing
if you don't, then it's better to ruin a hobby by making it work than to hate your life because you hate your job

>> No.64540912

>>64540796
what should moment be defined as? I managed to get my script and jqerury to load correctly, and everything works except duration, which throws this error in the console:

Uncaught ReferenceError: moment is not defined

>> No.64540915

>>64540855
Thing is OSes are always doing something. So they can interleave checks and distributions on the message queue (which will then trigger your thread into action after being hibernated in a "waiting for message" state) into their normal behavior and can throttle down the processor in more intelligent and dynamic ways based on the entire load of all running processes.

>> No.64540990

>>64536085

I was asked a question today about what protected access modifiers in java did and I totally forgot


does this make me a brainlet

>> No.64541010

>>64540482
3 billion devices run Java code at this very moment.
How many devices run Haskell code right now?

>> No.64541028

I only kind of know Java, I actually know C++. Should I list Java on my resume?

>> No.64541039

>>64541028

I only kind of know C++ and I know Java

same shit desu, unless its for a senior developer position languages dont mean dogshit. Its all the same practices of writing good code, just in c++ you have to deal with the hassle of deallocating memory

>> No.64541046

>>64541028
>Should I list Java on my resume?
You're just asking to be rejected when someone asks you Java questions and it becomes apparent that you don't know it.

>> No.64541051

>>64541046
>>64541039
Cool, thanks

>> No.64541142

>>64540079
>>64540244
>>64540314
Thanks for the help. With your assistance I fixed the memory problem that I noticed earlier and the overall memory is reduced. It went from 12 to 6 mb. I realize that size is kind of irrelevant but it feels good knowing that it's functioning more correctly now and its not doing stuff I don't expect yet.

>> No.64541257

I just graduated but didn't get a job. What did I do wrong?

>> No.64541275

>>64541046

unless he fakes it and gets hired in which case hey why not

a jobs a job, companies will slit your throat to save a nickle. Might as well make it fair game

>> No.64541276

>>64541257
Take this to hackernews pls

>> No.64541279

>>64541257
Didn't make enough interpersonal connections.

>> No.64541282

>>64541257
>a fucking white male
You have been outsourced to India.

>> No.64541287

>>64541257
You didn't learn Lisp

>> No.64541326

>>64536085
Who is this semen demon?

>> No.64541345

>>64541257

its ok at least you didnt graduate with a job then leave to take a higher paying job only to get shitcanned 2 months later when they found someone with 10+ years of experience to replace you

only in america :^)

>> No.64541379

>>64541345
that sucks bro, sounds like a pretty shitty company if they do that. I'm graduating next term and I've been applying to a bunch of places but no replies yet. From all the postings I see it looks like if you have 5-7 years of experience for senior level positions you basically have a ton of leverage to pick what you want since so many people are looking.

>> No.64541386

>>64541345
>with 10+ years of experience to replace you
for less money, too
because they're desperate for work and need to support their family

>> No.64541388

How does parsing work? For example, I have to parse regular characters like 1, (, + etc and also there are special keywords like sin, log, pow etc.

>> No.64541409

>>64541388
split on comma, result is a list/array/vector of strings

>> No.64541415

>>64540817

this made it work, thank you so much

>> No.64541416

New thread:

>>64541413
>>64541413

>> No.64541423

>>64541388
Look up regular expressions, or setting up a context free grammar using yacc if you have something really complex and long.

>> No.64541769

>>64538558
dumb frogposter

>>
Name (leave empty)
Comment (leave empty)
Name
E-mail
Subject
Comment
Password [?]Password used for file deletion.
Captcha
Action