Live data from Hacker News

Sentient: a high-level, declarative programming language

sentient-lang.org

11–20 of 27 posts

Re: Sentient: a high-level, declarative programming language

#11
post #6

Something feels kind of "right" about this in the same sense that machine learning techniques seem to be able to produce correct results. In my "things that exist in Star Trek:TNG that we should be making more progress on" list, I think that how we program is wrong for a great many of use-cases. In the Star Trek fictional universe, you often see characters programming impossibly complex things very quickly. There's s…

I think one programming paradigm that is very underserved is something in the sorts of filters. GPU shaders, Signal Processing or a Nginx filter are all on this line of thinking. We should be more inclined into program things as filters where we manipulate and maybe mutate/transform the data that is passing through that filter, so this could be easily paralelized, cut a lot of expensive CPU branches and where humans…

Semi-amusingly, to tie that to GP's comment, the few times they show "real" programming on Star Trek, that's exactly what it looks like - visually chaining transformations together in a directed graph.

Re: Sentient: a high-level, declarative programming language

#12
post #9

Earlier quoted context omitted.

I think one programming paradigm that is very underserved is something in the sorts of filters. GPU shaders, Signal Processing or a Nginx filter are all on this line of thinking. We should be more inclined into program things as filters where we manipulate and maybe mutate/transform the data that is passing through that filter, so this could be easily paralelized, cut a lot of expensive CPU branches and where humans…

I'm inclined to agree but if an nginx filter is like (HttpRequest, HttpResponse) => (HttpRequest, HttpResponse) then aren't we basically saying we like purely problems that can be expressed as compositions of pure functions? Signal programming I have less feelings on

in Nginx HttpRequest/HttpResponse are larger abstractions but the "real fun" will happen at the buffers, where you will end up mostly manipulating bytes on the buffers.

The fact that we are creating arbitrary abstractions to represent data and imposing to others is actually the core issue here.

Supose we could set up the representation for the most things as a matrix. colors, words, sound, etc..

Than you can filter and process applying linear algebra, ML, etc..

I fell that the way we pack bytes, in arbitrary fashion, by mixing types is a core impediment for us to have a better experience with the program/data duality.

But i guess that all of this data centered, AI focused world will make us understand a better way to deal with both programs and data. The need to make our ML agents understand our world will probably change the way we deal with code and data.

Re: Sentient: a high-level, declarative programming language

#13
At first glance, this appears to be similar to languages like MiniZinc (https://www.minizinc.org/) and maybe AMPL (https://ampl.com/). That is, you describe a problem in some form of constraint-based programming language, and you send it to a solver to find the solution.

Am I understanding this correctly? Or am I missing something? What are the differences between Sentient and MiniZinc etc?

Re: Sentient: a high-level, declarative programming language

#15
post #7
post #5

Earlier quoted context omitted.

I know this comment is being flagged as inflammatory, but I appreciate knowing that there are at least some other people who find people rewriting eveything in webtech tiring.

So what has been "rewritten" here? Does the fact that other declarative programming languages exist mean the author shouldn't experiment with their own, or do you merely object to their choice of tech stack for this?

Agreed. Furthermore, taking on a project like this is a great learning process. I’d encourage more people to experiment like this.

Re: Sentient: a high-level, declarative programming language

#16
post #9

Earlier quoted context omitted.

I think one programming paradigm that is very underserved is something in the sorts of filters. GPU shaders, Signal Processing or a Nginx filter are all on this line of thinking. We should be more inclined into program things as filters where we manipulate and maybe mutate/transform the data that is passing through that filter, so this could be easily paralelized, cut a lot of expensive CPU branches and where humans…

I'm inclined to agree but if an nginx filter is like (HttpRequest, HttpResponse) => (HttpRequest, HttpResponse) then aren't we basically saying we like purely problems that can be expressed as compositions of pure functions? Signal programming I have less feelings on

Is the jump to pure functions needed? I mean, nginx will happily include a cache lookup, or a random content in that transformation - that's very much not pure, but often desired.

Re: Sentient: a high-level, declarative programming language

#17
post #11

Earlier quoted context omitted.

I think one programming paradigm that is very underserved is something in the sorts of filters. GPU shaders, Signal Processing or a Nginx filter are all on this line of thinking. We should be more inclined into program things as filters where we manipulate and maybe mutate/transform the data that is passing through that filter, so this could be easily paralelized, cut a lot of expensive CPU branches and where humans…

Semi-amusingly, to tie that to GP's comment, the few times they show "real" programming on Star Trek, that's exactly what it looks like - visually chaining transformations together in a directed graph.

Noodle interfaces are really old in terms of GUIs, and have the advantage of being very visual (important for a TV series) so that's not too surprising

Re: Sentient: a high-level, declarative programming language

#18
post #6

Something feels kind of "right" about this in the same sense that machine learning techniques seem to be able to produce correct results. In my "things that exist in Star Trek:TNG that we should be making more progress on" list, I think that how we program is wrong for a great many of use-cases. In the Star Trek fictional universe, you often see characters programming impossibly complex things very quickly. There's s…

I think one programming paradigm that is very underserved is something in the sorts of filters. GPU shaders, Signal Processing or a Nginx filter are all on this line of thinking. We should be more inclined into program things as filters where we manipulate and maybe mutate/transform the data that is passing through that filter, so this could be easily paralelized, cut a lot of expensive CPU branches and where humans…

You might be interested in Halide:

https://halide-lang.org/

Re: Sentient: a high-level, declarative programming language

#19
post #6

Something feels kind of "right" about this in the same sense that machine learning techniques seem to be able to produce correct results. In my "things that exist in Star Trek:TNG that we should be making more progress on" list, I think that how we program is wrong for a great many of use-cases. In the Star Trek fictional universe, you often see characters programming impossibly complex things very quickly. There's s…

The reason for why thats possible in StarTrek is pretty simple... P = NP.

Heres the evidence: There are no unbreakable cyphers in Startrek, it's merely a matter of time or Datas smarts until whatever species of the weeks encrypted message is broken.

Thus, most optimisation and search problems are easily solvable in their universe including automatic program synthesis.

Post reply on HN