|
hackbunny posted:not my fault, was just doing an OSX build of Password Safe hey, i use that software
|
# ? Mar 11, 2014 18:36 |
|
|
# ? May 20, 2024 07:56 |
|
hackbunny posted:not my fault, was just doing an OSX build of Password Safe yeah c++ doesn't have a specified abi so everybody has to recompile poo poo when apple switched to clang++ fulltime c++: lmao
|
# ? Mar 11, 2014 18:55 |
|
Malcolm XML posted:yeah c++ doesn't have a specified abi so everybody has to recompile poo poo when apple switched to clang++ fulltime rust please save us from c++ amen
|
# ? Mar 11, 2014 18:56 |
|
few pages back but this rules
|
# ? Mar 11, 2014 19:00 |
|
Malcolm XML posted:rust please save us from c++ amen poo poo that will never happen
|
# ? Mar 11, 2014 19:08 |
use elixir 0.12.5
|
|
# ? Mar 11, 2014 19:09 |
|
havelock posted:C# enums accept arbitrary ints for versioning reasons. Sum types force you to handle all cases at compile time, enums (in C# anyway) explicitly don't. As long as you have a default: in your case statement then you're fine.
|
# ? Mar 11, 2014 19:44 |
|
Soricidus posted:exhaustiveness checking is the best thing about java enums. if i add a new member, the compiler will tell me what code needs to be updated to handle it. default clauses just hide the problem, like why are you using a statically typed language if you don't want static checks Because adding an explicitly new value shouldn't force all of your library consumers to recompile. (I don't want to hear wrong opinions about checked exceptions again, but do note that this is a consistent choice in that respect) havelock fucked around with this message at 20:34 on Mar 11, 2014 |
# ? Mar 11, 2014 20:27 |
|
adding a new enum value is change in the api and everyone should be made aware. that's the entire point of static typing. if you don't want that to happen just go back to using public static final int.
|
# ? Mar 11, 2014 20:44 |
|
Shaggar posted:adding a new enum value is change in the api and everyone should be made aware. that's the entire point of static typing. Which mode should I open this file in? Guess what - someone added a new mode that isn't the one I was asking for anyway - gotta recompile. If you are changing semantics, you should be changing your version number significantly anyway, so callers would have to explicitly opt in.
|
# ? Mar 11, 2014 20:50 |
|
yeah you should totally up the version number for sure but anyone who upgrades should also be warned about changes whenever possible. manual documentation will be ignored and/or wrong, so its best to let the compiler inform them
|
# ? Mar 11, 2014 20:58 |
|
Shaggar posted:adding a new enum value is change in the api and everyone should be made aware. that's the entire point of static typing. Shaggar was right (as usual)
|
# ? Mar 11, 2014 21:21 |
|
Malcolm XML posted:yeah c++ doesn't have a specified abi so everybody has to recompile poo poo when apple switched to clang++ fulltime llvm/clang is saving us from c++ seriously the 00s were a loving nightmare but plangs of all things convinced people that maybe stroopoops frankenstein was already too big for any one person to know so we may as well tack more on that was actually usuable and now we're on the third new spec because clang proved it doesnt take a decade to implement one. now its trying to slay the include beast, actually using it on a few projects by choice again and having an ok time also gcc was becoming a temple to everything wrong with open sores it woken up a little but too late
|
# ? Mar 11, 2014 21:56 |
|
Breakfast All Day posted:also gcc was becoming a temple to everything wrong with open sores itym cathedral hyuk hyuk hyuk
|
# ? Mar 11, 2014 23:16 |
|
current java stack trace: code:
|
# ? Mar 11, 2014 23:40 |
|
you know what would make that better? xml. boom.
|
# ? Mar 11, 2014 23:53 |
|
DukeDuke posted:my "Programming Language Concepts" professor is teaching us agda, a functional language even more useless than the haskell it's built on. on a recent student eval form he actually asked "should this class switch to haskell in the future?" where do you go to school? (is it... duke?) agda would generally be taught in a graduate level class devoted entirely to programming dependently typed proof assistants. and if he wants to teach that, he should use coq, because it's more mature
|
# ? Mar 12, 2014 00:34 |
|
Bloody posted:one unless you count fpgas then... half? in a normal micro you just fart some machine code into some memory and when it powers on the program counter always starts at some known value and it just starts doing whatever it finds at that spot in memory and off it goes, executing your poo poo code somebody maybe itt posted about how on intel chips the 'machine code' gets recompiled down to some risc-like thing on the fly and executed thatwise
|
# ? Mar 12, 2014 00:53 |
|
Breakfast All Day posted:also gcc was becoming a temple to everything wrong with open sores "was becoming"? that was already after they hosed up the project management bad enough to have to go egcs
|
# ? Mar 12, 2014 00:54 |
|
fritz posted:somebody maybe itt posted about how on intel chips the 'machine code' gets recompiled down to some risc-like thing on the fly and executed thatwise i don't think recompilation is a reasonable term for the translation of macroops (regular instructions) to microops that goes on in the instruction decode stage of a modern x86 chip's pipeline
|
# ? Mar 12, 2014 01:40 |
|
prefect posted:hey, i use that software I did manage to build and run it. it works fine except for trying to put 9 rows in a 2x6 grid layout which makes it crash. and a possibly unrelated crash when it's compiled in release mode. the UI is clunky and the code is messy so I'm not going to try and fix it any soon, but I'll try to be a good citizen and contribute patches for the worst issues Malcolm XML posted:yeah c++ doesn't have a specified abi so everybody has to recompile poo poo when apple switched to clang++ fulltime there is an ABI specification and both g++ and clang are following it to some degree because they are like 99.9% compatible, but libraries can still screw up if they do conditional compilation in ways that produce different object layouts for different, binary-compatible compilers. there are patterns to make C++ libraries robust against that kind of issue but and you know that if you man up and do it, some sperglord is going to put your library through a benchmark to mathematically prove that it's bad and you're bad and you should feel bad
|
# ? Mar 12, 2014 01:42 |
|
pretty soon you end up just reinventing COM... "copy-pasting method wrappers is really tedious, why not just allocate all this stuff on the heap and use smart pointers? of course, then you have to have reference counting semantics and oh my god what am i doing i know where this road leads" at least everything on linux uses the same libc, though i bet statically-linked proprietary software that exports a plugin API turns into a freakshow real fast
|
# ? Mar 12, 2014 02:20 |
|
Janitor Prime posted:current java stack trace:
|
# ? Mar 12, 2014 03:44 |
|
Malcolm XML posted:yeah c++ doesn't have a specified abi so everybody has to recompile poo poo when apple switched to clang++ fulltime hackbunny posted:there is an ABI specification and both g++ and clang are following it to some degree because they are like 99.9% compatible, but libraries can still screw up if they do conditional compilation in ways that produce different object layouts for different, binary-compatible compilers. there are patterns to make C++ libraries robust against that kind of issue but and you know that if you man up and do it, some sperglord is going to put your library through a benchmark to mathematically prove that it's bad and you're bad and you should feel bad there is literally no way to do c++ right
|
# ? Mar 12, 2014 04:58 |
|
Mr Dog posted:at least everything on linux uses the same libc, though i bet statically-linked proprietary software that exports a plugin API turns into a freakshow real fast the linux linker is not that stupid. it technically supports rpath like solaris. distribution packages never need the feature but it means proprietary software is almost always dynamically linked simplified explanation linux-style linking
solaris-style (sane) linking
linux technically supports the latter, better system and vendors are usually smart enough to use it when they are not, that is when the suffering begins. LD_PRELOAD abusers should be shot
|
# ? Mar 12, 2014 05:07 |
|
Notorious b.s.d. posted:there is literally no way to do c++ right
|
# ? Mar 12, 2014 05:09 |
|
Janitor Prime posted:current java stack trace: you havent lived until youve seen the 20k line stack trace
|
# ? Mar 12, 2014 05:19 |
|
if you approach C or C++ with the idee fixe that a PL exists somewhere fundamentally above the bare hardware you will fail every time
|
# ? Mar 12, 2014 05:30 |
|
Gazpacho posted:if you approach C or C++ with the idee fixe that a PL exists somewhere fundamentally above the bare hardware you will fail every time c is portable pdp-11 assembly c++ is an obfuscation layer
|
# ? Mar 12, 2014 05:38 |
|
also if you're one of the people who says "C++'s edge cases have edge cases" shut the gently caress up, you're only saying that because you picked up a phony assumption somewhere and would rather pile on exceptions to it than look at the standard
|
# ? Mar 12, 2014 05:38 |
|
Gazpacho posted:also if you're one of the people who says "C++'s edge cases have edge cases" shut the gently caress up, you're only saying that because you picked up a phony assumption somewhere and would rather pile on exceptions to it than look at the standard lol look at this guy who thinks he understands the c++ standard
|
# ? Mar 12, 2014 05:41 |
|
Gazpacho posted:if you approach C or C++ with the idee fixe that a PL exists somewhere fundamentally above the bare hardware you will fail every time au contrair, C violates plenty of assumptions that are safe in assembly and C++ violates even more. eg. there are probably many more broken C implementations of overflow checks for signed integers than working ones
|
# ? Mar 12, 2014 05:43 |
|
Notorious b.s.d. posted:lol Otto Skorzeny posted:au contrair, C violates plenty of assumptions that are safe in assembly and C++ violates even more. eg. there are probably many more broken C implementations of overflow checks for signed integers than working ones Gazpacho fucked around with this message at 05:49 on Mar 12, 2014 |
# ? Mar 12, 2014 05:46 |
|
Gazpacho posted:give me one example of an "edge case with an edge case" that was not the objectionable part of your post give me one example of how "look at the standard" clarified otherwise-inexplicable behavior for you
|
# ? Mar 12, 2014 05:48 |
|
Notorious b.s.d. posted:that was not the objectionable part of your post
|
# ? Mar 12, 2014 05:53 |
|
Gazpacho posted:it would be contrair if i said that C and C++ are isomorphic to assembly language but i didn't you said that C and C++ both give you the "bare hardware", which is wrong, and the deviation of the semantics of c from the way the underlying hardware works is easiest to demonstrate with asm
|
# ? Mar 12, 2014 05:55 |
|
Otto Skorzeny posted:you said that C and C++ both give you the "bare hardware"
|
# ? Mar 12, 2014 05:56 |
|
shitpost then backpedal, another fine night in the pos
|
# ? Mar 12, 2014 06:00 |
|
Gazpacho posted:i don't exhaust every other possible source before checking the standard yeah just let me check this 1300 page draft standard to answer my questions quote:The return type of an overriding function shall be either identical to the return type of the overridden and of course all of the words in this passage have specific meanings inside the standard. and this is only page 241, the building blocks for later portions. the c++ type system is comparable in complexity to the u.s. tax code. unlike the irs, my compiler will not accept a "defensible position" based on the standard if i gently caress it up i mean holy gently caress dude i chose a page at random and found a tax worksheet for determining covariance
|
# ? Mar 12, 2014 06:02 |
|
|
# ? May 20, 2024 07:56 |
|
i would rather spend the rest of my life doing taxes than write c++ for money
|
# ? Mar 12, 2014 06:04 |