-- Leo's gemini proxy

-- Connecting to bbs.geminispace.org:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini; charset=utf-8

Comment by ๐Ÿฆ‰ ResetReboot


Re: "[gemini link] I've been using Rust for about five years..."

In: s/programming


I've just read your article after finding a YT video about Rust... and while it started pretty well... they lost me the moment the guy at the video says "You can write everything in Rust".


Hm, yeah, the same was said of JS, C, C++... and we all know, that not all problems are nails. It made me think "What kind of people are the so called rustaceans" and your article just made my suspicions right.


And yes, the community is important, specially the attitude of the language developers, in how the language itself evolves.


๐Ÿฆ‰ ResetReboot

2023-08-22 ยท 9 months ago


10 Later Comments โ†“


๐Ÿ˜ˆ dimkr ยท 2023-08-22 at 16:59:

@gemalaya I think it's Go. It's not perfect but I love it for various reasons (most of them translate into good productivity) and I have success stories with it at work. I use it when I can compromise on executable size and sacrifice some performance (i.e. when I can't just minimize memory allocations, etc' in hot paths) to gain easy collaboration, easier development overall and a good performance+scalability vs. attention to detail ratio (especially when I mentor a junior developer). Most of my toy projects, including my Gemini client, are still in C I think I should fully translate at least one to Rust (or zig?) instead of giving up at an early stage.


๐Ÿ˜บ gemalaya ยท 2023-08-22 at 20:41:

@dimkr Cool. I have nothing bad to say about Go, one of my favourite projects, kubo (IPFS implementation) is written in Go.


I'm into GUI development, this is what i wrote recently (Gemini browser written in QML):


https://gemalaya.gitlab.io/


๐Ÿ™ norayr ยท 2023-11-12 at 23:18:

i have been written similar comment recently in other thread (even 3 comments) but let me try to express myself again.


i am someone who was talking about safe programming and strong typing for at least 20 years.


we had ada, modula-2, modula-3, oberon, well even pascal freepascal or gnu pascal are much safer than c/c++ and these pascal implementations had modules.


nobody was even trying to use these languages.


today go is successful in part because it has google, and rust is successful in part because it has corporate promotion.


it is good that people started to care about safety. i personally like go (it is very much inspired of oberon, and i like oberon) and i personally dislike rust.


๐Ÿ™ norayr ยท 2023-11-12 at 23:24:

i dislike rust because it is slow to compile. it takes days on pinebook, and that is a bad sign for me. i don't want to use something that builds long. and i build everything i use on my laptops.


go builds very fast. the compiler itselg builds in 2 minutes.


my oberon compiler builds itself in seconds and most of the time is wasted by gnu tools behind it.


recently there was a thread on openbsd mailing list. why openbsd project would not write more in rust or rewrite some code in rust? and one of the answers was by theo - the founder and leader of the project: rust even cannot build itself on x86 because it needs more memory than 32 bit address space allows.


๐Ÿ™ norayr ยท 2023-11-12 at 23:31:

so i would say, if you are interested in modern and safe programming then


if you need libraries, big community, or master skills that can help to get a job then take a look at go - i am glad it exists.


i am not glad that rust exists.


otherwise if you want to tinker with interesting modern tech (even if it is from 80ies it is modern and some badly designed things today aren't, those are just contemporary) then take a look at ada (it is a big language for some people's taste) or modula-3. modula-3 is a small language which has everything programmers usually want: parallelism in language, exceptions, oop.


if you want even something smaller then oberon is a great language.


๐Ÿ™ norayr ยท 2023-11-13 at 00:07:

here as a side note some words about contemporary pascal. i dislike it because the de facto standard (not iso) was driven by a company, and it had to market it, add features, closely tie to an ide, etc.


i like that there is floss compiler fpc, and though it mostly (but not always) follows the language standard defined by a company behind delphi, it has many valuable properties and it is very underappreciated (though not as much as ada, modula and oberon).


๐Ÿ™ norayr ยท 2023-11-13 at 00:08:

no dependency on libc by default. compiled binaries are statically linked with runtime library which uses kernel syscalls directly, bypassing libc.


those binaries are of very small size: about 20kb.


stand alone commandline compiler, no dependency on the ide, i usually use vim, support in gdb, almost every architecture and os is supported.


very efficient memory manager: programs compiled with fpc are outstanding in compiler benchmarks by very low memory usage.


๐Ÿ™ norayr ยท 2023-11-13 at 00:16:

enegy efficiency: if you look at


โ€” that famous research


you'll see in the table 5 (pareto optimal sets for different combination of objectives) that there is always c on the first line, but also there go twice and there is pascal three times.


time & memory: winners are: c, pascal go

energy & time: c alone

energy and memory: c and pascal (pascal is better than c if we take only memory usage)

energy, time and memory: all three share the first line; c, pascal, go.


๐Ÿ™ norayr ยท 2023-11-13 at 00:17:

unlike other languages i mentioned (ada, modulas, oberon) pascal has a reasonably big community, many libraries.


lazarus is a great tool to create gui programs. same program can be compiled with gtk backend or qt backend, or for winfows or macos. or amigaos or morphos. or by using a toolkit written in pascal.


you dont need anymore to change your program because underlying ui toolkit gets deprecated: community updates the lcl (lazarus component library) backend, lets say it also supports not only gtk2 but gtk3, or newer version of qt, you just recompile your program and you get a version which works with newer or different ui toolkit.


๐Ÿ™ norayr ยท 2023-11-13 at 00:18:

wide list of supported platforms also mean you can write with fpc for an old palm pda or for game boy advance.


Original Post


๐ŸŒ’ s/programming

[gemini link] I've been using Rust for about five years now, but I'm beginning to sour on it. I'm curious about perspectives here.

๐Ÿ’ฌ jeang3nie ยท 24 comments ยท 4 likes ยท 2023-08-20 ยท 9 months ago

-- Response ended

-- Page fetched on Sun Jun 2 13:12:40 2024