Show HN: Fuse – statically typed functional programming language
11–20 of 49 posts
Re: Show HN: Fuse – statically typed functional programming language
#12Superficially, I find the syntax very untuitive to read. Most languages opt to use for typevariables. Is there a specific reason you chose to deviate from that and use []?
Re: Show HN: Fuse – statically typed functional programming language
#13Superficially, I find the syntax very untuitive to read. Most languages opt to use for typevariables. Is there a specific reason you chose to deviate from that and use []?
Re: Show HN: Fuse – statically typed functional programming language
#14Re: Show HN: Fuse – statically typed functional programming language
#15Superficially, I find the syntax very untuitive to read. Most languages opt to use for typevariables. Is there a specific reason you chose to deviate from that and use []?
I actually can't think of any functional languages that use for type variables (I'm sure there's one or two, but it can't be common)
Re: Show HN: Fuse – statically typed functional programming language
#16It's nice to see a GRIN backend in the wild! It looks like a tidy little functional language - a small, easily grasped syntax surface and generally clear semantics. That you've got it to the point that it can compile and run proper programs is a great achievement for a solo dev project! The string type in the standard library isn't Unicode-aware, might be worth just noting that. Unicode support can be a big undertaki…
First of all thanks for all the feedback and looking into it, appreciate it! Yeah GRIN is a great project, it took a lot of debugging and analysis to make it compile 100% especially with monomorphization involved. I'll look into Unicode support, makes total sense. Didn't scope it in initially. I can fix the site ligatures too, that's a fair remark. > I don't really understand why you have an IO monad. The language is…
Re: Show HN: Fuse – statically typed functional programming language
#17I wish you took Haskell's syntax as such. Why did you mix rust and possibly other stuff with it?
Haskell is a great language with a really advanced type-system, although I found its syntax hard to read at times especially as I was exploring the language at first. On the other hand I really liked how Rust syntax was defined in terms of ADTs, Traits & Methods Impls, with type signatures required for functions. Hence I wished for a similar functional language that has such write-style and type concepts, but strippi…
Re: Show HN: Fuse – statically typed functional programming language
#18Love to see a real-world example of GRIN! trait Functor[A]: fun map[B](self, f: A -> B) -> Self[B]; This looks a little wacky to me. I see that you can write HKTs in their η-long form and refer to them unapplied (`Functor`). But I don't understand how I would use this syntax to attach something to the trait that _doesn't_ depend on `A`. For (a silly) example, trait SizedFunctor[A]: Functor[A]: type Size; fun size(sel…
fun map[Self: Functor, A, B](self: Self[A], f: A -> B) -> Self[B];
Since `Self` is the unapplied constructor, `Self[B]` just means `Functor[B]` e.g. `List[B]` not `List[A][B]`.The example you've shown with `SizedFunctor` is not currently supported, as support for associated types is not yet implemented. I got it on the roadmap tho!
Re: Show HN: Fuse – statically typed functional programming language
#19Superficially, I find the syntax very untuitive to read. Most languages opt to use for typevariables. Is there a specific reason you chose to deviate from that and use []?
I actually can't think of any functional languages that use for type variables (I'm sure there's one or two, but it can't be common)
Re: Show HN: Fuse – statically typed functional programming language
#20I know jShell has been here like 10 years, but I'm not sure it's convenient to quickly write to a file, query a url, etc.
.ksh for Kotlin? Typescript (through Deno)? Lua?