sleexyz / hylogen Goto Github PK
View Code? Open in Web Editor NEWGLSL embedded in Haskell
Home Page: https://hylogen.com
GLSL embedded in Haskell
Home Page: https://hylogen.com
editor shortcuts to bypass inotify?
hmmm.....
bug is that we need matricies!
copy
compilation freezes on recursion
for compile time gradients for surface normals :))))))))))))))))))
For faster recompiles
Have hylogen the language generate programs other than those for the hylogen server
ended breaking Ctrl-C functionality for hylide
Currently using enter
as a replacement, but its kinda awkward...
And clean up javascript code?
via Per-uniform dependency injection
Go from select :: Booly -> Expr a -> Expr a -> Expr a
to select :: (Selectable s) => Booly -> s -> s -> s
where a selectable can be a haskell-side (aka shallowly embedded) ADT, like a tuple
Maybe a separate project?
Pros:
Cons:
Perhaps when this projects gets more mature, we can try an in-browser preview in a try-halogen project
right now sel
can only handle primitive input and output types.
One way is to create a Struct
/Selectable
typeclass that will be selectable
non trivial, this might involve making changes to the AST for a specific Numeric
form.
mainly for syntactic niceities
Right now: only one way to make Vec4 from HyloPrims:
Vec4 :: (Vec1, Vec1, Vec1, Vec1) -> Vec4
Desired: More ways:
Vec4 :: (Vec3, Vec1) -> Vec4
...
etc
We've implemented the primitive for a backbuffer.
Now how do we do it for arbitrary images?
specify textures in a local folder?
Compare transpilation and compilation times for pure DSL vs monadic DSL
Now that we have observable sharing via data-reify
, CSE is really just icing on the cake.
Ideally: whip out the editor, the browser, and execute just one command
Pros:
Cons:
keep js code minimal and simple
Perhaps we need a monadic context (#11)
A few things are inexpressible in the pure DSL:
In general we want to generate code that is concise as possible to minimize compile times of the generated GLSL
use Vector Space
like in webpack hot-module reloading
where to put fragment shader boilerplate?
Probably in the Hylogen library
And have app/Main.hs
import Hylogen
With GLFW? SDL?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.