Readit News logoReadit News
malbs commented on Darkrealms BBS   darkrealms.ca/... · Posted by u/TigerUniversity
pigggg · 2 days ago
Don't forget some BRE and TW2002
malbs · 2 days ago
InterBBS BRE is still one of my favourite turn based "online" strategy experiences, working together to defeat other BBS's, so good
malbs commented on I come here not to bury Delphi, but to praise it (2019)   accu.org/journals/overloa... · Posted by u/open-source-ux
xamomax · 3 years ago
In the early days of Delphi I considered it to be a huge competitive advantage in terms of productivity and speed against everything out there. As time went on, though, it slowly died, and it became increasingly difficult to find and integrate 3rd party libraries, or find developers to work in the system. The user interface aspects of it also became dated and difficult to make modern.

Too bad, as I really liked it, especially the language. I liked the AMIGA as well, which also was ahead of its time and seemed to suffer a similar fate.

malbs · 3 years ago
> or find developers to work in the system

It's an interesting issue, personally I wouldn't look at someones employment history, and working with legacy tools/environments, as a black mark, but it could be indicative of someone who simply refuses to move to new technology.

I've also hired some younger people who were actually interested in picking it up because they were keen to learn anything they could, and you can learn plenty from Delphi despite it's warts.

Over time I've described myself as suffering a kind Stockholm Syndrome w/ Delphi now, and some of the guys on my team have flat out refused to learn it for maintaining some of our systems.

malbs commented on I come here not to bury Delphi, but to praise it (2019)   accu.org/journals/overloa... · Posted by u/open-source-ux
malkia · 3 years ago
I started with Turbo Pascal 3, Moved to 4, 4.5, 5, 6 then Delphi. Somewhere in there moved to "C" and then "C++".

Couple of observations:

    - Using C (Borland or Microsoft) required two floppy disks - one for the compiler, one for the linker. With most of the Pascal versions you end up just needing one floppy disk, later it didn't matter as we moved to HDD.

    - First "terrible" experience (by a friend) - he moved from Pascal to C and placed all his code in the .h-eader file, and was wondering why it takes so much to compile (oh, yes nowadays it's fashionable to have header-only libs, lol), but then it was awful.

    - Pascal Units enforced you (as explained in the article) to figure out cyclic dependencies, unfortunately lots of us thought of this as a limitation, which C/C++ did not had. How wrong we were!

    - There was barely any use of preprocessor (yes there was), and it was more into the language, than some external pre-processor.

    - Mark/Release was superior, but also harder to understand the idea than plain old malloc/free

         * Mark - "Records the state of the heap in a pointer variable".

         * Release - "Returns the heap to a given state".

         * So you can quickly release memory in one hop (like nowadays what json parser might need to do).

    - Turbo Pascal 3.0 was only 30-40kb - Even later Borland could keep up to a single disk. Assembly was approachable from it

    - Peephole optimization!

malbs · 3 years ago
And Turbo Pascal was CHEAP, I think in terms of what you got for your $50? I can't remember the original retail price, you couldn't beat it. Hell, if you kept your eye out you could get copies of Delphi, / Delphi 3 for the cost of a "introduction to Delphi" book which almost always came with a standard license of Delphi.

Hobbyist Borland was the best Borland. A really amazing company that fully embraced those original tinkerers... Enterprise <X>, full vomit, but hey, that's where they got to charge many thousands per seat, so you can't really blame them.

malbs commented on I come here not to bury Delphi, but to praise it (2019)   accu.org/journals/overloa... · Posted by u/open-source-ux
ctoth · 3 years ago
Last time I looked at this I couldn't really find an easy standard way to make HTTPS API calls and parse JSON, but only spent an hour or two playing with it. Can you point me at the canonical way to do this? What's the Requests of FreePascal?
malbs · 3 years ago
For Delphi it is a combo of the Indy project (IdHttp), and superobject (probably other json parsers too but superobject is quick and fairly solid).

However, given I've yet to find Delphi code that straight up compiles in Lazarus/FreePascal, you probably have your work cut out for you, but if you google for [superobject/indy] for Lazarus, others have started those hikes, and you may find there are working versions of one, or possibly both of them. I've never looked.

malbs commented on I come here not to bury Delphi, but to praise it (2019)   accu.org/journals/overloa... · Posted by u/open-source-ux
badsectoracula · 3 years ago
> It's fine, it feels dated, going back to the original Delphi / VB style of RAD tool with form designer/code editor as floating windows etc.

Note that if you install the "anchordockingdsgn" and the "dockedformeditor" packages you will get a UI that uses a single toplevel window with all the previously floating windows being docked inside it (you can still un-dock them) and a form editor that is inside the window (without the "dockedformeditor" you can still get the single window for the IDE but form editing will happen in floating forms).

Personally i prefer the floating windows UI as i overlap windows a lot (and i'm used to it - also i have a dedicated virtual desktop for coding which helps), but there are enough people who prefer a single window UI that this should work without issues these days (it used to be somewhat very unpolished at the past, like installing the package and having a shotgun blast in the IDE panels :-P so you'd spend a few minutes moving and resizing the panels in sane places).

malbs · 3 years ago
Thanks for the info, anchordockingdsgn/dockedformeditor, sounds like it will solve my aesthetic gripe with Lazarus.
malbs commented on I come here not to bury Delphi, but to praise it (2019)   accu.org/journals/overloa... · Posted by u/open-source-ux
pjmlp · 3 years ago
> The no-circular-dependencies rule was a huge pain though. It allowed the compiler to be very fast (along with it basically not optimizing), but no other language has copied this

C++20 Modules, .NET Assemblies, D modules, Ada packages, and plenty of other othes.

Also, Turbo Pascal did indeed allow for circular dependencies between units, as long as the related uses statements were written in the implementation section of the unit, and there were no public dependencies.

Thanks to bitsavers, Turbo Pascal 5 manual, page 97,

http://bitsavers.informatik.uni-stuttgart.de/pdf/borland/tur...

malbs · 3 years ago
Yeah, this... You can have circular dependencies, as long as it is in the implementation only. Takes some thought on interface definitions to avoid these things. Sometimes it's a real pain.

There's also the issue that when you split out units, and then you have a user who wants to consume say, a library you've written, you then have to document "Ok, to use this you have to use X, Y, and Z units for type definitions"

A better approach is to have a single "entry point" unit if you will, that simply re-declares all of the types from the X,Y,Z units, so that when you go to use the code you've written, you only have to import W, and get all the type defs already. (Hard to explain what I'm talking about I guess)

malbs commented on I come here not to bury Delphi, but to praise it (2019)   accu.org/journals/overloa... · Posted by u/open-source-ux
unsubstantiated · 3 years ago
Perhaps unknown to the HN community is that C# periodically gets Delphi features reintroduced in it in one way or another.

More recently, C# 9 and 10 have returned the concept of `records` (preferably immutable objects) along with the `with` keyword for making copies with some of the properties changed from the source to the dest object.

It has been an interesting decade watching HN metaphorically (and sometimes literally i'm sure) shift around uncomfortable in their chair as the all-encompassing-nightmare M$FT creates two languages that are more and more dominating of developer marketshare - C# and TypeScript.

malbs · 3 years ago
When he adds metaclasses and Virtual Class Functions to C#, I'll say his migration of Delphi features is finally complete.
malbs commented on I come here not to bury Delphi, but to praise it (2019)   accu.org/journals/overloa... · Posted by u/open-source-ux
codr7 · 3 years ago
Because it's all proprietary, and continuously deprecated to blend better with the latest hype.

I did 13 years with Delphi, full time.

malbs · 3 years ago
Mate I've got a project whose first lines of code were struck back in the 80s in Turbo pascal. Your "continuously deprecated" argument doesn't hold a lot of water from where I sit... In terms of actual language features/changes that have caused deprecated status, those are very few and far between. Maybe some VCL database controls, for sure it would have sucked to have built stuff relying on interbase, but that is not a language/compiler feature, that was CodeGear EOL that particular project (I had to manage the exit strategy on one of our projects where it relied on that crapware)

Even library developers are pretty good at pumping out versions of their libs that have support for even Delphi 5. I know of at least 2 people who are still doing windows dev on Delphi 5 or maybe 7, I can't recall.. the very definition of "from my cold dead fingers".

Suffice to say if you were one of those real hold-outs, not updating to the latest.. you wouldn't have generics, dynamic arrays, lambdas/anonymous functions, and you would probably struggle to grab much code written in the last decade and compile it straight up.. but that would probably be the case for a number of languages that have had core features added to them over time.

The fact that the system is proprietary certainly is an issue, but every install always ships with all the source code of the RTL, VCL, and clear instructions on how to compile it with a "you're on your own now" sense of adventure.

malbs commented on I come here not to bury Delphi, but to praise it (2019)   accu.org/journals/overloa... · Posted by u/open-source-ux
superdisk · 3 years ago
I know he's talking about Delphi here, but FreePascal+Lazarus is still one of my secret weapons. It has some sort of supernatural force field which causes people to ignore it and unfairly denigrate it; meanwhile I whip up desktop applications in hours that would normally take days.
malbs · 3 years ago
The one negative I've found with Lazarus... And this is purely if you were someone coming from a Delphi background, or were planning on Lazarus being your "get out of jail free" card if [Embarcadero/(whoever owns it now)] decides to stop updating Delphi (and even then you could probably manage it's lack of updates for years, hell I stayed on Delphi 2007 for a good 8 or 9 years after XE, XE1, XE2 et al had been out).. Anyways, back to my point, the one major negative I've found with Lazarus is you simply can not take Delphi code, and compile it straight in Lazarus... There are many many many very subtle differences. Totally fine and understandable, but if you were planning on taking the attitude of "Stuff Delphi, lets take our 400k line project and move to Lazarus", you are going to have a bad time.

Having said that I've done a couple of my own projects at home in Lazarus. It's fine, it feels dated, going back to the original Delphi / VB style of RAD tool with form designer/code editor as floating windows etc. The intellisense leaves something to be desired, but I can't be too critical because it's not like I'm putting my hand up to contribute to the project. If you look at what you get for what you pay for, it's quite literally amazing.

malbs commented on 41 Years Ago, There Were BBS Instead of the Internet   theregister.co.uk/2019/02... · Posted by u/laphony
malbs · 7 years ago
Fidonet as the original electronic mail package, Door Games (BRE, cross-bbs wars, wow), ANSI Art, damn, it was really fun. I loved my time dialing into the local BBS's.

It was interesting watching some of the larger ones in my area turn into the most successful ISPs at the time (and get consumed later by the much larger national ones).

It inspired me to run my own, and while I only had the one line, and a very simple set of RemoteAccess screens, the experience taught me a hell of a lot about computers in general.

u/malbs

KarmaCake day880March 12, 2010
About
derp
View Original