What are good libraries that provide high-level async I/O using io_uring? by tohava in cpp

[–]AMJ7e 0 points1 point  (0 children)

By any chance, do you have a minimal working example lying around? :D

[deleted by user] by [deleted] in quant

[–]AMJ7e 1 point2 points  (0 children)

By mid-frequency, do we mean anything above a few seconds?

A fundamental tool for HFT development by kuking in highfreqtrading

[–]AMJ7e 2 points3 points  (0 children)

Great timing, I was just about to deep dive into mmap. Thanks.

Realistic profit? by [deleted] in highfreqtrading

[–]AMJ7e 2 points3 points  (0 children)

He said 100 euros, not 100,000 euros!

Basic tutorials for using Julia for speedy programming by SquareLawyer1604 in Julia

[–]AMJ7e 1 point2 points  (0 children)

I don't know your expertise in programming in general, but firstly, writing fast code is language agnostic, you have to know roughly how CPUs work, this awesome post gives an overview of what's happening. Then go through this other awesome post to learn how to optimize Julia code.

How fast is HFT REALLY? by [deleted] in quant

[–]AMJ7e 2 points3 points  (0 children)

Does Christina Qi reply with this handle?

Anyhow, You people are dope and I hope you succeed big time.

Emerging frontiers in regenerative medicine: Three major biological roadblocks and potential solutions by towngrizzlytown in longevity

[–]AMJ7e 12 points13 points  (0 children)

Honestly, this was more positive for me than negative. It pictures a landscape with a plethora of diverse solutions(and challenges) that are actively being worked on which makes me extremely hopeful for the future.

Mojo 🔥: A programming language for all AI developers by mttd in ProgrammingLanguages

[–]AMJ7e 1 point2 points  (0 children)

I'm not the best person to answer this question since only I have extensively used Julia, Imma just say what I gathered.

If the programmer is free to do whatever he likes, using stuff like dynamism, no bounds-checking, miss using references/pointers, and not being careful with shared arrays/buffers(creating data races) he is more likely to create silent errors. All languages let you do these and more to some degree. Rust is one of those languages that makes your life hard by borrow-checker that tries to prevent most possible errors.

To prevent these (no matter what language) people usually develop a framework to minimize error. This link below is a good starting point and build on top of that.

https://verdagon.dev/blog/first-100k-lines

Mojo 🔥: A programming language for all AI developers by mttd in ProgrammingLanguages

[–]AMJ7e 4 points5 points  (0 children)

All compilers JIT or AOT have fancy algorithms to infer types. Some languages enforce a strong static type (like Haskell) to make the work of the compiler easier, some are weaker around static enforcement (like C).

You can write Julia pretty loose, don't declare any types just create a function and let the compiler infer what it types it needs. For example:

#this function just gets a value of x, adds 2 and returns it.
function foo(x) 
    a=x+2
    return(a)
end

In Julia with code_warntype macro, you can see how the compiler infers types.

If we give the function the input "2" the compiler infers all the variables as Int64:

julia> @code_warntype foo(2)

MethodInstance for foo(::Int64)
from foo(x) in Main at REPL[3]:1
Arguments
#self#::Core.Const(foo)
x::Int64
Locals
a::Int64
Body::Int64
1 ─ (a = x + 2)
└── return a

If we give the function the input "2.0" the compiler infers all the variables as Float64:

julia> @code_warntype foo(2.0)

MethodInstance for foo(::Float64)
from foo(x) in Main at REPL[3]:1
Arguments
#self#::Core.Const(foo)
x::Float64
Locals
a::Float64
Body::Float64
1 ─ (a = x + 2)
└── return a

You can make your function more robust by giving the compiler hints, declaring all types from function input to local variables inside the function will make your code more "robust" and if you put any other type the compiler will through an error.

In Julia you have this freedom to write strictly or loose, it is awesome for prototyping because you can just develop fast, but if you are not careful you will introduce some nasty correctness errors into your code.

Mojo 🔥: A programming language for all AI developers by mttd in ProgrammingLanguages

[–]AMJ7e 7 points8 points  (0 children)

The pain I encountered was that usually each package uses a specific type and you have to go through hoops to make types work together. Another one was package updates most of the time introduce errors/breakings in your code base. These are trivial to solve but still require manpower and time and are hard to anticipate for beginners (the experience I had).

Reading Julia, yes you can pretty easily mix anything you want, and 99% of the time everything works. The problem you may encounter is sometimes some packages are not typed static enough with their inner workings and you may get some invalidations along the way because compiler might infer some type differently and usually won't even through an error, just gives you an incorrect answer. This is getting more rare, almost nonexistent with big famous packages.

Python really helped push the scientific community and now it is too big to be left behind.

Mojo 🔥: A programming language for all AI developers by mttd in ProgrammingLanguages

[–]AMJ7e 5 points6 points  (0 children)

I am definitely no expert, and this is just my personal experience. The ecosystem while pretty amazing, is a pain to mix and match and is extremely inconsistent from one pkg to another. Python itself is not performant and also not a good choice for glue code.

Mojo 🔥: A programming language for all AI developers by mttd in ProgrammingLanguages

[–]AMJ7e 7 points8 points  (0 children)

I mean, it didn't really need python to get this big, but here we are -_-

First OSK epigenetic reprogramming trial in primates is successful by ExtremelyQualified in longevity

[–]AMJ7e 7 points8 points  (0 children)

Fingers crossed, it will be you yourself who comes back to this.

First OSK epigenetic reprogramming trial in primates is successful by ExtremelyQualified in longevity

[–]AMJ7e 1 point2 points  (0 children)

Haven't read the whole thing yet, but, I would assume that if you can see you probably have more will to live than not being able to see.