HNHacker News
TopNewBestAskShowJobs

systems

2,183 karma · joined February 4, 2008

You will!
submissionscomments
systems··on Driving with D
HotSpot was not the mainstream JVM I see now its been opensourced, and apparently, np longer in active development, and I dont know how much of it made it into mainstream Java

Java is one of the top 3-5 most popular languages, and have huge backing

So its understandable that people found a way to make it fast, and honeslty, i dont really know how much effort does this require, but it seems from your example, it less than what C++ need

This all in all, seem counter intuitive, if Java is really as fast as C++, why is it that mainstream knowledge suggest otherwise

Either, your example is hiding something, or there is other reasons people still use C++ when they need high performance

D was meant to replace C++ not be a fast Java like language, I would argue, it achieved neither

D wanted to be a mainstream language, this is why the adopted the C/C++/Java style of programming, and again they didnt achieve this objective

D is not instinct, it still have a small dedicate user base, I just wholeheartedly think, today, you have far better options: Rust, Go, OCaml , C# , Kotlin

systems··on Driving with D
on the point of the GC being a good thing to have, this is true, but not when your main objective is to replace C++, C++ key advantage being RAII deterministic manual memory management

You cant replace C++ with GC language, even 10 years ago this should have been evident to a seasoned developers such as Walter Bright and Andrei Alexandrescu

Sometimes great developers are bad product managers

Anyway, with Rust and Go, D have no where to go, I don't think it should be fixed to appeal to a wider user base, the only good strategic move they can do today, it make it better for the current user base, they have few big users, they should focus on them and the language will fade once those users move on to something else

systems··on Driving with D
As far as I know D's original design strategy, was to be a simpler to use C++ with a GC, but with the same expressive power

Over time, this proved to be a bad strategy, C++ key strength became RAII (deterministic memory management), so the GC became a failed strategy

The maintainers tried to move in different directions, adding manually memory management, making the GC optional, moved D to be a C replacement, with the -betterc compiling option, and many other tweaks and features added overtime, but nothing really caught on

systems··on Gnat 2021 GPL Community Edition Ada 202x compiler released
This is more of a general question With the availability of free languages such as Rust, Clojure, F#, Go, Typescript, Idris, Raku You have a solid option that cover ever possible paradigm and style of programming you may fathom

Why would any one invest time or effort in a commercial language such as Ada, Eiffel or even Xojo and LispWorks, that require you to pay for Automated test support and what is considered by most standards now basic libraries

And not only that, the communities are usually tiny and support is probably very limited to the commercial support they provide, and when it comes to languages, languages with big communities, provide infinitely better support than commercial support for proprietary languages or implementations

The cost of AdaCore is not just the compiler license, its the total ecosystem cost

systems··on Multicore OCaml: April 2021
what i know is that it is inherently harder to have good GC performance with mutable language

and as i said D has a very small community Java is on the opposite side of this spectrum its immensely popular, and as I understand it took Java several iteration, and tons of resources before gaining good performance, and still today, Java optimization is a specialized experts job

systems··on Multicore OCaml: April 2021
Well, D have a GC, and by design cannot have a GC with good performance, because of its complex mutable object system

OCaml, can achieve good GC performance because its immutable by default

D by design, will never outperform OCaml, at least this is my understanding

That, and I think D's community is too small to fix the language, while it does have several brilliant members and developer, its just too small and underfunded

So, you have two reason why D should not be an option the first technical ( D will never have a good GC ) the second is more of a logistics issue, the community is just not there to support a language as complex and as ambitious as D and deliver on all its claims

systems··on Multicore OCaml: April 2021
OCaml is everything D wanted to be, but failed

OCaml is high performance, Garbage Collected, hybrid system and application programming language

You can use OCaml to write high performance Apps and System tools without worrying too much about performance, or doing crazy manual memory management

I would also say, if you like Go, but think you hit a wall with it, then try OCaml

system programming language: C, C++, Rust

Hybrid system and application languages: OCaml, Go , D

If you need a language in this class (Hybrid system and app)I think currently Go and OCaml are your only options, Go being closer to C, Java familly of languages and OCaml is an ML language, so choose as per your preference

systems··on MLJ.jl: A Julia package for composable machine learning
I dont like Python, but the language have dominant libraries in many domains

Julia hides Python, Julia good

I understand that using Python feels wrong, because Python is not know for its performance, but still it seems like a Practical decision, rebuilding everything from scratch will be too much effort

systems··on You Don't Need a GUI
what is your setup to save queries in file and run them, does psql support this model

i use ssms for mssql, and i have a large solution with multiple projects

i know datagrip can be used in the same way as ssms, but can you this be done using psql

systems··on ClojureScript 1.10.844
A bit of an obvious question Elm, Typescript and Purescript all offer Javascript + Types

Clojurescript is dynamic, beside the lisp syntax which is arguably cleaner, and offer some nice advantages like homoiconicity

What is the real advantage of Clojurescript (?)

systems··on Sublime Text 4 [video]
then why not use notepad++ its free and open source, unlike sublime text
systems··on Sublime Text 4 [video]
quick editing : Notepad++

coding : vscode , jetbrains

pim : emacs org-mode

I think sublime text is somewhere between quick editing and coding, but there are better options for both

systems··on Julia 1.6 Highlights
Can you tell me one design benefit (a real good one) for not declaring variables before their use, in a mutable by default programming language
systems··on Julia 1.6 Highlights
its an exceptional behaviour, its a code smell, good code, should try to make exceptions normal

its a very poor design they don't have variable declaration, and they have to go head over heels to provide acceptable behaviour

anyway, it is a bad thing in the language, lets not defend it (i hope)

julia still have a lot to offer, i guess it can afford one design flaw

systems··on Julia 1.6 Highlights
Its a suggestion to fix the awkwardness, one that will never get approved

"Put your code into functions, people!" .. is the reason why most people dont notice the weird scoping rules

You will only hit the weirdness face first, if you write scripts with global variables, which is usually what beginners do

Most advanced users, and library writers, probably hardly notice it

systems··on Julia 1.6 Highlights
no it has not, they now have different rules for repl, which is part of scope awkwardness
systems··on Julia 1.6 Highlights
I know its minor, but I still hope they will fix scoping

not that my suggestion is good, but what they have now is bad

https://github.com/JuliaLang/julia/issues/37187

systems··on Substack's UI and 1Password temporarily cost me $2k
I use a prepaid card online, which would have been a good safety net against things like this

Also he was able to get a refund, and i think in most places online, you can cancel the order

systems··on What's New in SQLite 3.35
I think the change introduced this syntax

with history as materialized { .. }

so you have to declare the CTE as materialized to get this optimization

systems··on What's New in SQLite 3.35
why isnt materialized CTE a default optimization in sql? why do we need to be explicit about it

any trade off

systems··on Julia: A Post-Mortem
I found Julia scoping rules to be weird, and a bit off putting

While this clearly doesn't seem to impact its adoption, or its community from creating great things

For the new comer to the language, the scoping rules just gives a bad feeling for the language, I wish they fix it in future versions

check my github issue if you want to know more what I mean by off putting scoping rules https://github.com/JuliaLang/julia/issues/37187

systems··on Thinking about software engineering
most typed functional languages seem to fit: ocaml, f#, purescript, haskell
systems··on Our Journey to PostgreSQL 12
its huge by database standard, i worked in large multinationals and dealt with some of the their largest databases

5.7 is enormous by database standard , there is no way you can get good query performance on a 5.7 tb database without solid physical partitioning and heavily optimized queries, and most normal companies even with 200-500 GB database use datamarts to have good performance without a super complex architectures and geniuses working fro you in db admin department

the more i think about it, the more i think that 5.7 TB would be unusably huge, and if you have this much data, most wont even bother to partition, the db will be broken into several (hundreds) smaller databases

systems··on I rewrote a Clojure tool in Rust
lol didnt notice that

i will fix it

systems··on I rewrote a Clojure tool in Rust
This is from memory, and i saw few examples but what i recall the syntax was less dsl-ish SQL is a DSL, it is not a general purpose language

Chris Dates' D ( not to be confused with Walter Bright D) looks more like a regular programing language

And was functional

So I think an language can add a library or an extension that act like D, or simulate D

Check this to get an idea https://reldb.org/c/wp-content/uploads/2017/12/Rel-and-Tutor...

Also, as I recall, the Notion of RelVars made it sound functional

Each Relational Operator, returned a RelVar So you were passing RelVars between operators until you get the result you want, which was a RelVar

Anyway this is from memory, so I maybe be wrong on many things .. but again from memory D or tutorial D sounded a lot less DSL-ish and lot more functional than SQL , which was an improvement in my mind

systems··on I rewrote a Clojure tool in Rust
i like how in the end the system was replaced by a database solution

every language need easy access to a query-ble database many problems are a lot simple when solved declaratively as a query-ble database

the relational model, is functional, and is a very good solution to a wide range of problems

i think the Sqlite engine should be integrated in the standard library of every language, and either use sql, or the language can provide a native sql alternative in the original language itself, or we can create a new standard language (because yes, sql can be improved upon)

I think Chris Date D language can be a place to start to investigate SQL alternative , or as a language that can be more easily emulated in other languages

systems··on The Smalltalk Zoo
probably because of the type of programming i do (business intelligence), live environment doesnt mean much to me

most programs run, and finish, and updating most programs while running, is not something important, you can always update it and run it again

for long running processes like servers well again,not really sure what this means

but i deal with database management systems, and i mean you can update a stored proc, without shutting down the server, you can of course update the data etc ..

as for the dbms process itself, i am not big on dba stuff,but most databases allow in-place upgrade , but usually you can to disconnect everyone while doing it

as for large website, like facebook or anything else even a lot smaller in scale, those are obviously not a single program .. and most likely they just restart services to pick up updates, and use a form of load balancing to work will go to servers that are not restarting

So in summary, this notion of live app, seem more theoretical than real to me

systems··on The Smalltalk Zoo
I understand the difference between introspection and autocomplete

Autocomplete if good tool support is available everywhere, and some languages have very good dynamic introspection (usable in a repl)

Powershell, Julia, raku .. i think also Ruby and Python also have create introspection, that you can use dynamically in a repl

https://perl6advent.wordpress.com/2015/12/19/day-19-introspe...

So in summary, doesnt repl+introspection+auto completion give the same value

systems··on The Smalltalk Zoo
what is currently the most popular language that is closest to smalltalk

i think many of the features that made smalltalk look revolutionary in the eighties are probably common in most modern languages

i am personally not supper impressed with the live ide thing, it feels more like a gimmick than anything else

systems··on Multicore OCaml: October 2020
Well i think, eventually it became F#, which is a different language, but this is what I understood from the parts I read from "The Early History of the F# Language, camera ready, HOPL-IV (PDF)" https://fsharp.org/history/
← PreviousPage 9 of 29Next →