[HN Gopher] C++Builder 11 Community Edition
       ___________________________________________________________________
        
       C++Builder 11 Community Edition
        
       Author : DaOne256
       Score  : 87 points
       Date   : 2023-09-15 09:34 UTC (13 hours ago)
        
 (HTM) web link (www.embarcadero.com)
 (TXT) w3m dump (www.embarcadero.com)
        
       | blinkingled wrote:
       | Borland's C++ compiler was _fast_. And I mean eye wateringly fast
       | on crappy pre-AMD64 hardware. I wonder if it supports modern C++
       | today and is still faster than other compilers. (If I am not
       | mistaken this new edition is a offshoot of that?)
       | 
       | (Yeah I am not downloading the "Community" edition if I have to
       | provide my name address and phone number. Really if your product
       | needs mindshare and you offer community edition the least you can
       | do is make it easily downloadable.)
        
         | qwerty456127 wrote:
         | It took Microsoft some generations to stoppe requiring you to
         | sign-in to use community edition after the trial period ends.
         | Perhaps Borland will fix this in some years as well.
        
           | CamperBob2 wrote:
           | Far as I can tell, it still does. Nothing more annoying when
           | chasing a bug than being forced to look up a password I
           | haven't used for several months in order to use the debugger.
        
         | kwanbix wrote:
         | You don't have an email for spam? And put any phone number.
        
           | [deleted]
        
           | blinkingled wrote:
           | I keep forgetting my spam email address/passwords lol I have
           | a Google voice number for when I need to use it on forms but
           | I have seen some websites don't accept it - there's ways to
           | determine that it's VOIP it seems.
        
         | ndiddy wrote:
         | I've downloaded one of their past community editions, their
         | sales team will call and email you. They back off when you tell
         | them you're not evaluating the product for your work, but it's
         | still kind of annoying.
        
           | blinkingled wrote:
           | Yeah I figured as much
        
           | kwanbix wrote:
           | So you give them your real email, and not a for-all-the-
           | registration-crap email? And you also give them your real
           | phone number?
        
           | notreallymy wrote:
           | Not only that. He knew the project name I created!
        
         | pjmlp wrote:
         | C++17, using their clang fork.
        
         | rob74 wrote:
         | Fast _for a C++ compiler_... but still worlds away from the
         | Delphi compiler!
        
         | yazzku wrote:
         | This kind of email+phone registration was common in the 90s and
         | earlier. Oh, wait, it's 2023.
        
           | pjmlp wrote:
           | It is perfectly common in 2023 for the kind of clients that
           | usually pay for development software tools.
        
         | zorgmonkey wrote:
         | I've never used it, but if memory serves they are, like many
         | other companies, using a fork clang. So I expect it will be
         | about as fast if not slower then clang.
        
       | cfn wrote:
       | You can only use this edition if you make less than 5000 USD
       | and/or have less than 5 devs. If you do, licenses start at 1000
       | USD per year. Assuming a commercial app, of course.
        
         | keepamovin wrote:
         | How does this compare to developing in Obj-C or Swift for iOS?
         | Is this like a cross-platform thing?
        
       | nurettin wrote:
       | The "community edition" version of delphi had no visual editor,
       | no way to build a bpl and it was 32bit only. I don't know thos
       | c++11 compiler's features, it isn't immediately apparent in the
       | mobile site.
        
       | matt3210 wrote:
       | Why this instead of clion?
        
         | pjmlp wrote:
         | VB like development experience for C++.
        
       | pjmlp wrote:
       | The only VB like development experience for C++.
       | 
       | Microsoft completely messed up the XAML / C++/CX development
       | experience with internal politics, only to have the team
       | responsible for C++/WinRT going on to have fun in Rust/WinRT,
       | leaving the former in maintenance state.
        
         | germandiago wrote:
         | How good is C++ Builder? Ever tried? I Saw It a couple of years
         | ago and it looked good actually but noone seems to use it.
        
           | pjmlp wrote:
           | Like I described, is like using VB for the GUI stuff, coupled
           | with the C++ capabilities.
           | 
           | Additionally it has a symbiotic relationship with Delphi,
           | similarly to how C# and C++/CLI are integrated, only much
           | better.
           | 
           | Nowadays the compiler backend is based in clang.
        
           | deaddodo wrote:
           | Imagine classic Visual C++ with it's form builder (versus the
           | modern WinRT stuff) and hooks...it's much like that. I would
           | say the experience is a little smoother. I do remember the
           | version I used to use had issues with the form builder to
           | where getting exactly what you wanted was finicky (the
           | rendered/preview version was never quite what the compiled
           | version ended up as).
        
             | pjmlp wrote:
             | If only VC++ ever had a form builder for C++ like C++
             | Builder has been doing for 30 years.
        
               | jbandela1 wrote:
               | Visual C++ 1.0 had AppStudio
               | 
               | https://ia800108.us.archive.org/5/items/MicrosoftVisualSt
               | udi...
        
               | pjmlp wrote:
               | Visual editors for Windows resources in MFC aren't the
               | same as C++ Builder VB like capabilities.
        
               | deaddodo wrote:
               | https://softelvdm.com/Vault/softelvdm.com/documentation/S
               | ftM...
        
               | pjmlp wrote:
               | Resource editor for dialogs isn't the same as the C++
               | Builder experience.
        
               | deaddodo wrote:
               | Whatever you say.
        
               | badsectoracula wrote:
               | ...is correct. Visual C++ has a visual resource editor,
               | but this isn't what C++ Builder does. C++ Builder edits
               | live objects, you declare a class with its properties
               | (this needs extensions to the C++ language) and during
               | design time the object is instantiated and edited
               | visually through the property editor ("object
               | inspector"). This works for both visual (buttons,
               | controls, etc) and non-visual objects.
               | 
               | The difference between what VC++ does and what C++
               | Builder (and Delphi) does is _massive_ and at a very
               | fundamental level.
        
           | georgehaake wrote:
           | Historically a great tool along with Delphi, with poor
           | subsequent management/ownership since the very early 2000's.
        
         | gavinray wrote:
         | > Come in thread
         | 
         | > Ctrl+F "pjmlp"
         | 
         | I was not disappointed.
        
         | sirwhinesalot wrote:
         | I can definitely understand them wanting to drop custom C++
         | extensions, but it's a shame they can't figure out how to
         | provide a nice development experience for their newer UI
         | platforms. If only .NET actually works reasonably well with it
         | (and there's a huge managed<->native overhead) maybe it should
         | have just been WPF 2.0?
         | 
         | Not that I would use WinUI anyway, microsoft cannot be trusted
         | with UI frameworks anymore.
        
           | pjmlp wrote:
           | The custom C++ extensions argument is a very bad lame excuse,
           | it isn't as if WinRT was ever going to be cross platform, or
           | not every single C and C++ compiler used in production (not
           | toy compilers) doesn't have their own set of extensions
           | anyway.
           | 
           | I also don't consider anything related to WinUI/UWP
           | trustworthy for production development, and I used to
           | advocate for it.
           | 
           | Stuff like how .NET Native, C++/CX => C++/WinRT transition,
           | UWP => WinUI were managed, is how they lost most of us that
           | really liked WinRT.
        
             | sirwhinesalot wrote:
             | All of that is fair, it's not like C++/CX was all that
             | different from needing to use Obj-C on macOS. I'm just
             | saying I can accept their reasoning. Using only standard
             | C++ is better in a vacuum, but only if nothing is lost in
             | the transition.
             | 
             | May I ask what your plan is regarding UI at this moment?
             | I've given up and gone the web route (with Avalonia on my
             | pocket in case my sanity gets dangerously low).
        
               | pjmlp wrote:
               | Similar plan, in 2019 I went back going to distributed
               | systems/Web, where Microsoft technologies are one among
               | many others that get used on a polyglot agency, the usual
               | "A jack of all trades is a master of none, but often
               | times better than a master of one.".
               | 
               | For doing Windows stuff, I would rather advocate for
               | Win32, Forms/WPF.
               | 
               | In regards to C++ stuff, either C++ Builder if it fits
               | the budget, or Qt.
               | 
               | It is quite tragic that even MFC has a better development
               | story than WinUI/C++.
        
               | avodonosov wrote:
               | How about .NET MAUI?
        
               | pjmlp wrote:
               | They decided to rewrite Xamarin.Forms, it uses WinUI on
               | Windows, Catalyst on macOS, and VS4Mac is now officially
               | dead and one has to use VSCode instead, and they are all
               | into this Blazor Hybrid as well, with Web views.
               | 
               | Take your own conclusions on its future.
        
             | rbanffy wrote:
             | I really, really, am baffled at how difficult it seems to
             | have a GUI builder tool that outputs a description of the
             | UI that a program can just load (or a compiler transform
             | into a structure inside the program) as objects the program
             | can use, handling events and pushing presentation
             | information into it.
             | 
             | That was pretty much what VB did, with immense success.
        
               | badsectoracula wrote:
               | The problem is that you need some form of RTTI that
               | allows object serialization. This is basically what
               | Delphi does: the forms, controls, etc you are editing are
               | not fake stand-ins, they are the class instances you are
               | working with. The object inspector shows you the actual
               | instance properties as defined in code and you are
               | editing live objects - the only difference is that those
               | objects have a "design mode" flag so they can ignore any
               | user input. When you save a form, it serializes the
               | objects on disk. That serialization data is stored on the
               | executable and when you run the program, the form is
               | deserialized and the object instances are what were
               | stored.
               | 
               | There is almost no UI-specific functionality there, the
               | same functionality can be used to serialize _any_ type of
               | object and you can even implement your own serialization
               | logic for your objects. The language 's RTII allows for
               | declaring properties (think like C# properties, though
               | really C# properties were inspired by Delphi properties
               | as the latter had them since the original Delphi 1.0 for
               | Windows 3.1) as part of a class and has support for
               | metaclasses (classes are instances themselves of a
               | metaclass that describes the class), including virtual
               | constructors (since classes are instances they have their
               | own VMT) which allows for constructing class instances on
               | the fly by passing a class type in a function.
               | 
               | The thing is, C++ does not have this sort of
               | functionality. You can implement your own RTTI, as
               | several projects do (many game engines do that for
               | example), but it is often clunky (e.g. relies on macros,
               | duplicating info, manual registration and/or external
               | tools that parse the code and generate the RTTI
               | boilerplate).
               | 
               | C++ Builder did it because it extended C++ to add that
               | functionality in a way that is ABI compatible with Delphi
               | - and is how it can use VCL (which is written in Delphi).
        
               | dleslie wrote:
               | It was easy to do in Win95 through to Win2k because the
               | interface was consistent throughout. Then they started
               | changing the interface guidelines, and toolkit, for every
               | major release of windows; and sometimes several times
               | during the life of a major release.
        
               | rbanffy wrote:
               | This is also baffling. A button, a text input, a
               | checkbox, a drop list, a combo - they all have a
               | "default" look in every Windows version since 2.0 (1
               | didn't have the drop list, IIRC). It shouldn't be
               | difficult to make an abstract description of a dialog box
               | look at home with a new version of the OS and, yet,
               | digging through Windows 10's built-in apps you sometimes
               | find things that you recognize as skinned versions of
               | Windows NT 4 dialogs. That they look like NT 4 dialogs
               | with the Windows 7 skin applied is disconcerting, at
               | best.
        
               | wolpoli wrote:
               | The Office team used to pioneer (hard-code) the look and
               | feel for the UI, and then the Windows team goes and
               | implement the look and feel system wide in a generic way.
               | Then somewhere along the way, the Windows team decided to
               | hard-code the look and feel that you could now do an
               | archeological dig through decades of UI.
        
             | jahnu wrote:
             | Same. The previous company I worked for we went all in on
             | UWP for our Windows SDK.
             | 
             | An almost complete waste of time as Microsoft failed to
             | deliver on their promises.
        
               | pjmlp wrote:
               | It is baffling to watch community calls and have them
               | talk about rewrites and dropped tooling features as if it
               | wasn't a big deal, being asked for the n-th time since
               | Windows 8.
        
             | ok123456 wrote:
             | Just use MFC 4.2 imho.
        
               | pjmlp wrote:
               | As noted in some of my comments, the way C++/WinRT have
               | messed up the development with total disrespect for
               | paying customers is incredible.
               | 
               | To come back to your point, the aging MFC has better
               | Visual Studio tooling than C++/WinRT will ever have,
               | specially now after being deprecated.
               | 
               | I would have fired the whole team responsible for
               | C++/WinRT.
        
               | sitzkrieg wrote:
               | honestly using plain win32api or mfc is the most stable
               | bet on the planet
        
               | RcouF1uZ4gsC wrote:
               | Thanks to Wine, it is probably the most stable way to
               | make a Linux GUI program as well.
        
               | rbanffy wrote:
               | COBOL, CICS and 3270 interfaces. That's where the action
               | isn't, which is great if you want APIs that remain stable
               | for decades.
        
       | sproketboy wrote:
       | [dead]
        
       | coliveira wrote:
       | The main problem with Borland C++ is that it is still a 32bit
       | compiler.
        
         | kwanbix wrote:
         | "C++Builder includes compilers for Win32, Win64 and iOS"
         | 
         | https://www.embarcadero.com/free-tools/ccompiler
        
         | deaddodo wrote:
         | They say right on the release announcement that they have a
         | clang-based compiler and that the system supports 64-bit
         | binaries.
        
         | Narishma wrote:
         | This is C++ Builder, not Borland C++.
        
         | peterhull90 wrote:
         | Borland C++ is a 32-bit compiler, I believe the latest version
         | is 5.5 and it came out in about 2000.
         | 
         | There is a newer version from Embarcadero, 7.20 from 2016[1].
         | 
         | The compiler in C++Builder is more modern and it will target
         | 64-bit for Windows at least.[0]
         | 
         | [0]:
         | https://docwiki.embarcadero.com/RADStudio/Alexandria/en/C%2B...
         | 
         | [1]: https://www.embarcadero.com/free-tools/ccompiler
        
         | pjmlp wrote:
         | Which is why there is a new clang based compiler now.
        
       | DaOne256 wrote:
       | See also: https://news.ycombinator.com/item?id=37520504
        
       | phendrenad2 wrote:
       | I understand why there isn't a Mac version, but it's still a bit
       | disappointing.
        
       | marcodiego wrote:
       | My main problem with delphi: it is "too proprietary". It was a
       | very productive IDE in the 90's or early 2000's but lost their
       | path and never recovered.
       | 
       | Some new versions broke compatibility with previous version's
       | components. There was the case where you paid a good amount of
       | money on some proprietary components and they simply wouldn't
       | work in the next version: you were imprisoned in an obsolete IDE.
       | By not being multi-platform (I heard it improved lately) you
       | could only use it with/for win32 so it lost servers, embedded,
       | cloud and mobile. By not being open-source nobody could improve
       | it.
       | 
       | Then it had to compete with "native tools". Whoever develops for
       | windows wouldn't quit ms' tools to use it, whoever develops for
       | mac wouldn't quit apple's tools to use it, whoever develops for
       | android wouldn't quit google's tools to use it, whoever develops
       | for linux was mostly ignored after kylix.
       | 
       | Note that I didn't even mentioned price and license.
       | 
       | They improved it later, I heard. But seems more like the old case
       | of too little too late. Most successful programming languages
       | today are open source and multi-platform. Delphi was dependent on
       | win32 for too long and it still is "too proprietary". You do the
       | world a favor by porting your project to lazarus.
        
         | msh wrote:
         | I think it was C# with winforms that broke the last oppotunity
         | delphi had.
        
         | anta40 wrote:
         | I don't mind trying Delphi again since they support mobile
         | targets (Android & iOS). Too bad the IDE itself only runs on
         | Windows...
        
         | georgehaake wrote:
         | Delphi 7, that was a lovely vintage...
        
           | codewritinfool wrote:
           | Delphi 7 was / is fantastic. Soon after that, they went .NET
           | and the wheels came off.
        
         | notpushkin wrote:
         | Doesn't Lazarus address at least some of these concerns? (I
         | don't think it's a drop in replacement though.)
         | 
         | https://www.lazarus-ide.org/
        
           | deaddodo wrote:
           | Mostly, although Lazarus has an incompatible ABI (LCLs vs
           | VCLs). So legacy projects relient on third-party components
           | don't benefit from it.
        
         | [deleted]
        
       | set_of_integer wrote:
       | [flagged]
        
       ___________________________________________________________________
       (page generated 2023-09-15 23:01 UTC)