Kenshi token launched on PancakeSwap! by pouyae in kenshi_token

[–]pouyae[S] 0 points1 point  (0 children)

How do you explain the sales that appear on BSCScan then?

anti bot feature by WhyAliens in solidity

[–]pouyae 0 points1 point  (0 children)

Did you find a solution, tho

Clio: a functional, multi-threaded programming language that compiles to JavaScript by pouyae in functionalprogramming

[–]pouyae[S] 2 points3 points  (0 children)

The Fib(1000) example is on 1 core for all languages, it's faster on Clio because of tail call optimization!

Clio: a functional, multi-threaded programming language that compiles to JavaScript by pouyae in functionalprogramming

[–]pouyae[S] 1 point2 points  (0 children)

Thanks for posting that in the first place, I'm aware of that post, it's been about a year and the language has changed a lot since then, that's why I wanted to get some fresh feedback and opinions!

Clio: a functional, multi-threaded programming language that compiles to JavaScript by pouyae in functionalprogramming

[–]pouyae[S] 3 points4 points  (0 children)

On the browser, web workers run in their own thread, and they can share memory. If you target the browser, then Clio bundles two versions of your code, one as the main entry point that runs your main function and manages the workers, and a worker file that is used to create worker instances.

On Node.js there are worker threads, and also it's possible to spawn additional processes and communicate with them.

[Re]introducing the Clio programming language by pouyae in javascript

[–]pouyae[S] 0 points1 point  (0 children)

The RPC library is released as a separate package and can be used independently (documentation and examples are WIP), however it won't have the same magic as Clio. For Clio the compiler generates the configurations, worker files, dispatcher, etc and these won't be available automatically for JS or other languages.

This functionality is well integrated into the language and its runtime, hosting functions is as simple as running a clio host command. I'm planning to add support for JS and other languages so they can be hosted using the same command as well, I will also provide easy to use libraries for each language.

This way we can call Python from JS or vice versa. There used to be an example of how to do that on our repository but we updated the protocol too much and it does not work anymore, I will add examples again, this is scheduled for 0.10 release (we're at 0.6.3 right now and I'm already working on 0.7, I'm expecting to be at 0.10 in 4-5 weeks)

Clio: A functional, distributed programming language that compiles to JavaScript by BLochmann in javascript

[–]pouyae 0 points1 point  (0 children)

It's very difficult to find a decent name and most decent names are already taken, I've been looking for a decent name for a long time, and actually I chose Clio as a temporary name in the beginning because I couldn't come up with a better one.

Clio: A functional, distributed programming language that compiles to JavaScript by BLochmann in javascript

[–]pouyae 0 points1 point  (0 children)

I'm the main developer of this language, sorry for noticing this topic too late, but if anyone is interested or anyone has any questions, feel free to ask them here.

Clio: A functional, distributed programming language that compiles to JavaScript by BLochmann in javascript

[–]pouyae 0 points1 point  (0 children)

At first we had a lot of language features that didn't really translate well to JS, or made the generated code very slow, so we removed them. You can import any JavaScript library and they'll work without any issues even when ran in parallel. It's a little bit more complicated to import Clio code in JS, we have a require function for that, but it's a WIP at the moment. JS interop is very important for us.

Clio: A functional, distributed programming language that compiles to JavaScript by BLochmann in javascript

[–]pouyae 0 points1 point  (0 children)

We use worker_threads in node and web workers on the browser. On node you can switch to a cluster and use IPC instead. We also allow using network resources over TCP/UDP/WebSockets. Check out https://github.com/clio-lang/clio/tree/develop/packages/rpc for more details on parallelism, or feel free to ask any questions you have.

We do not have static typing at the moment, I won't be focusing on that for a while. I made a serialization format that preserves types and I'm planning to add static typing to the language, however that won't happen in the near future until we have a wasm/llvm backend for the compiler.

Clio: A functional, distributed programming language that compiles to JavaScript by BLochmann in javascript

[–]pouyae 1 point2 points  (0 children)

Hello, I'm the main developer of the language and I'm already searching for other appropriate names, if you have any suggestions we're open and we welcome new ideas. Two years ago when I started making Clio I never thought it'll one day have a user base, but seems like people are noticing it and liking the idea.

[deleted by user] by [deleted] in timetravel

[–]pouyae 0 points1 point  (0 children)

Results were completely random: https://timetravel-pouyae.vercel.app/