fir-0.1.0.0: test/Tests/Unicode/Syntax.hs
{-# LANGUAGE BlockArguments #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE OverloadedLabels #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE RebindableSyntax #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE UnicodeSyntax #-}
module Tests.Unicode.Syntax where
-- fir
import FIR
------------------------------------------------
-- program
type Defs = '[ "υβο" ':-> Uniform '[ Binding 0, DescriptorSet 0 ]
( Struct '[ "φ" ':-> Float ] )
, "προϊόν" ':-> Output '[ Location 0 ] Float
, "κύριος" ':-> EntryPoint '[] Vertex
]
program :: Module Defs
program = Module $ entryPoint @"κύριος" @Vertex do
φ <- use @(Name "υβο" :.: Name "φ")
δ₀ <- def @"δ₀" @R @Float $ 0.1 * φ
put @"προϊόν" δ₀