├── help ├── example.csv ├── Math │ ├── UVCheckerMap1024_Quadrants.png │ └── Explanation 01 Intro.vl ├── Shaders │ ├── EditShaders │ │ ├── EditShaders.sdpkg │ │ ├── NuGet.config │ │ ├── EditShaders.csproj │ │ └── EditShaders.sln │ ├── shaders │ │ └── DemoSpreadShader_TextureFX.sdsl │ └── HowTo Access a Spread inside a Shader.vl ├── Type Flexibility │ ├── 10 Programming-time type flexibility │ │ ├── HowTo 13 Overloading and Adaptive Intro.vl │ │ └── HowTo 12 Generics Advanced.vl │ ├── Explanation 02 Types of Type Flexibility.vl │ ├── Explanation 01 What Is Type Safety.vl │ └── 20 Run-time type flexibility │ │ ├── HowTo 23 Explicit Conversion of Numerics.vl │ │ └── HowTo 22 Implicit Conversion of Numerics.vl ├── HowTo When is a Pad also a framedelay.vl ├── HowTo Access Bits as Boolean outputs.vl ├── HowTo Generate all combinations of a number set.vl └── Mutability │ └── Explanation 07 Mutability, Architecture and Design Patterns.vl ├── .gitignore ├── .vl └── VL.ExtendedTutorials.vl.dll ├── .github └── workflows │ └── main.yml ├── deployment └── VL.ExtendedTutorials.nuspec ├── LICENSE ├── VL.ExtendedTutorials.vl └── README.md /help/example.csv: -------------------------------------------------------------------------------- 1 | Foo,Bar,Baz 2 | A,0,0 3 | B,1,1 4 | C,5,5 -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # .v4p backup files 3 | *~.xml 4 | 5 | # Dynamic plugins .dll 6 | bin/ 7 | -------------------------------------------------------------------------------- /.vl/VL.ExtendedTutorials.vl.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TobyKLight/VL.ExtendedTutorials/HEAD/.vl/VL.ExtendedTutorials.vl.dll -------------------------------------------------------------------------------- /help/Math/UVCheckerMap1024_Quadrants.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TobyKLight/VL.ExtendedTutorials/HEAD/help/Math/UVCheckerMap1024_Quadrants.png -------------------------------------------------------------------------------- /help/Shaders/EditShaders/EditShaders.sdpkg: -------------------------------------------------------------------------------- 1 | !Package 2 | SerializedVersion: {Assets: 3.1.0.0} 3 | Meta: 4 | Name: EditShaders 5 | Version: 1.0.0 6 | Authors: [] 7 | Owners: [] 8 | Dependencies: null 9 | AssetFolders: 10 | - Path: !dir ../shaders 11 | ResourceFolders: 12 | - !dir Resources 13 | OutputGroupDirectories: {} 14 | ExplicitFolders: [] 15 | Bundles: [] 16 | TemplateFolders: [] 17 | RootAssets: [] -------------------------------------------------------------------------------- /help/Shaders/EditShaders/NuGet.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- 1 | name: push_nuget 2 | 3 | # on push on main 4 | on: 5 | push: 6 | branches: 7 | - main 8 | paths-ignore: 9 | - README.md 10 | 11 | jobs: 12 | build: 13 | runs-on: windows-latest 14 | steps: 15 | - name: Git Checkout 16 | uses: actions/checkout@main 17 | 18 | - name: Setup Nuget.exe 19 | uses: nuget/setup-nuget@v1 20 | 21 | - name: Publish VL Nuget 22 | uses: vvvv/PublishVLNuget@1.0.29 23 | with: 24 | nuspec: deployment\VL.ExtendedTutorials.nuspec 25 | nuget-key: ${{ secrets.NUGET_KEY }} 26 | -------------------------------------------------------------------------------- /help/Shaders/EditShaders/EditShaders.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net6.0 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /deployment/VL.ExtendedTutorials.nuspec: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | VL.ExtendedTutorials 5 | 1.1.13 6 | VL.ExtendedTutorials 7 | TobyKLight 8 | TobyKLight 9 | https://github.com/TobyKLight/VL.ExtendedTutorials 10 | false 11 | Further helppatches for vvvv gamma covering intermediate topics 12 | Topics include Mutability (Record vs Class), Solving Cyclic problems and a vector matrix maths tutorial series 13 | VL, vvvv, mutability, tutorial 14 | MIT 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 TobyKLight 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /help/Shaders/shaders/DemoSpreadShader_TextureFX.sdsl: -------------------------------------------------------------------------------- 1 | [TextureSource] 2 | [Category("Source")] 3 | [Summary("")] 4 | shader DemoSpreadShader_TextureFX : TextureFX 5 | { 6 | [Color] 7 | float4 Color = float4(1, 1, 1, 1); 8 | 9 | //To create the inputs declare StructuredBuffers here with the subtype you want. 10 | //Note1 the input pin won't appear on the vvvv shader node with just the buffer declaration. The buffer has to be used in the shader code below. 11 | //Note2 color is float4. 12 | 13 | 14 | StructuredBuffer Colors ; 15 | StructuredBuffer Intensities ; 16 | 17 | stage override float4 Shading() 18 | { 19 | 20 | float2 uv = streams.TexCoord; 21 | 22 | //Use GetDimensions function to get the count of the buffer. You also have to get the Stride even if you don't use it. 23 | 24 | uint count, stride; 25 | Colors.GetDimensions(count, stride); 26 | 27 | float4 c; 28 | 29 | int index = uv.x * count; 30 | 31 | //then access the values using typical array notation. 32 | 33 | c = Colors[index] * Intensities[index]; 34 | 35 | 36 | return c; 37 | } 38 | }; -------------------------------------------------------------------------------- /help/Shaders/EditShaders/EditShaders.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 16 4 | VisualStudioVersion = 16.0.30413.136 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EditShaders", "EditShaders.csproj", "{A6E4858A-CDF7-4384-8FF3-3CFE59E8EEC4}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Release|Any CPU = Release|Any CPU 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {A6E4858A-CDF7-4384-8FF3-3CFE59E8EEC4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 15 | {A6E4858A-CDF7-4384-8FF3-3CFE59E8EEC4}.Debug|Any CPU.Build.0 = Debug|Any CPU 16 | {A6E4858A-CDF7-4384-8FF3-3CFE59E8EEC4}.Release|Any CPU.ActiveCfg = Release|Any CPU 17 | {A6E4858A-CDF7-4384-8FF3-3CFE59E8EEC4}.Release|Any CPU.Build.0 = Release|Any CPU 18 | EndGlobalSection 19 | GlobalSection(SolutionProperties) = preSolution 20 | HideSolutionNode = FALSE 21 | EndGlobalSection 22 | GlobalSection(ExtensibilityGlobals) = postSolution 23 | SolutionGuid = {CF611081-98A6-431A-9E02-3B4EC9D6D856} 24 | EndGlobalSection 25 | EndGlobal 26 | -------------------------------------------------------------------------------- /VL.ExtendedTutorials.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Extended Tutorials for vvvv Gamma 2 | Extended tutorial help patches for vvvv gamma, covering common questions as learners move from beginner towards intermediate. 3 | 4 | Install by going to the top left menu > Manage Nugets > Commandline and typing 5 | 6 | ````Nuget Install VL.ExtendedTutorials```` 7 | 8 | # Contents 9 | ![image](https://user-images.githubusercontent.com/4467208/223262541-a2b34c30-28c0-441f-880c-6c8c0b04e261.png) 10 | 11 | ![MathsTutorials](https://github.com/TobyKLight/VL.ExtendedTutorials/assets/4467208/cfacba64-01a7-4489-bf82-a652d5f20b8d) 12 | 13 | 14 | # Videos 15 | Some of these helppatches are accompanied by videos that you can find in this playlist on youtube 16 | https://youtube.com/playlist?list=PLEncasrnvr2bkPb0QKdU1DrDs4Hd_Jr0V&feature=shared 17 | 18 | # Release History 19 | V1.1.13 20 | * Added helppatch on generating every combination of x numbers (for brute forcing) 21 | * Added helppatch on inserting a new value in a sorted collection 22 | 23 | V1.1.10 24 | * Small improvements in the type flex tutorials 25 | 26 | V1.1.9 27 | * Added small helppatch on working with the Box mathematical structure from Stride used by collision nodes. 28 | 29 | V1.1.8 30 | * Added patches for Types tutorial (video coming soon) and example patch for Manipulating classes video 31 | 32 | V1.1.5 33 | * Fixed some typos 34 | 35 | V1.1.4 36 | * Added maths helppatch for converting from world space to screen space manually. Thanks @Motzi for support with this one. 37 | 38 | V1.1.1 39 | * Bugfix set the Renderer windows to start in nicer default positions. Improved some text. 40 | 41 | V1.1.0 42 | * Added maths helppatch series covering vector and matrix maths. 43 | 44 | V1.0.6 45 | * Bugfix forgot to give 'Tickets are the new bang' a bona fide helppatch prefix. 46 | 47 | V1.0.5 48 | * Added tutorial 'Tickets are the new bang' 49 | * Added an extra case/gotcha to 'Stateful vs Stateless' tutorial 50 | * Improved text on some of the other tutorials 51 | 52 | V1.0.4 53 | * Added helppatches for Exporting to Spreadsheets and Stateful vs Stateless 54 | 55 | V1.0.3 56 | * Fixed error in the understanding defaults helppatch 57 | 58 | v1.0.2 59 | * Ensured compatibility with 2022.4.11-1312 (RC4) 60 | 61 | # Dependencies 62 | 63 | VL.PolyTools, installed automatically via nuget 64 | https://www.nuget.org/packages/VL.PolyTools 65 | 66 | 67 | # Contributing 68 | If you'd like to contribute just open an issue to talk about the subject you want to cover 69 | -------------------------------------------------------------------------------- /help/Type Flexibility/10 Programming-time type flexibility/HowTo 13 Overloading and Adaptive Intro.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 9 26 | Comment 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 9 35 | Comment 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 9 65 | Comment 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /help/Math/Explanation 01 Intro.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 9 24 | Comment 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 9 33 | Link 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 9 42 | Comment 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 9 51 | Comment 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 9 60 | Link 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 16 70 | Comment 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 9 79 | Comment 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 9 88 | Comment 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 9 97 | Link 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 9 106 | Comment 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 9 115 | Comment 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | -------------------------------------------------------------------------------- /help/Shaders/HowTo Access a Spread inside a Shader.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 6 29 | 30 | 31 | 0.8699999, 0.20880179, 0, 1 32 | 0.7400002, 0, 0.31079766, 1 33 | 0, 0.64000034, 1, 1 34 | 0, 1, 0.2799971, 1 35 | 1, 0.83999985, 0, 1 36 | 0, 0.9399984, 1, 1 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 9 45 | Comment 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 9 54 | Link 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 9 103 | Comment 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 9 112 | Link 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 10 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 9 171 | Comment 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 9 180 | Comment 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | -------------------------------------------------------------------------------- /help/Type Flexibility/Explanation 02 Types of Type Flexibility.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 16 25 | Comment 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 16 35 | Comment 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 9 44 | Comment 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 9 53 | Comment 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 9 63 | Comment 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 14 72 | Comment 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 14 81 | Comment 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 14 90 | Comment 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 9 100 | Comment 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 9 110 | Comment 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 9 120 | Comment 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 14 129 | Comment 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 14 138 | Comment 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 14 147 | Comment 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 9 156 | Comment 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 9 166 | Comment 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 14 175 | Comment 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 14 184 | Comment 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | -------------------------------------------------------------------------------- /help/HowTo When is a Pad also a framedelay.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 9 23 | Comment 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 9 32 | Comment 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 9 41 | Link 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 9 50 | Comment 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 9 59 | Comment 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 9 69 | Comment 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | Toggle 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 9 97 | Comment 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 9 108 | Comment 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 9 117 | Comment 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 9 165 | Comment 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 9 174 | Comment 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 9 183 | Comment 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 9 192 | Comment 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | -------------------------------------------------------------------------------- /help/Type Flexibility/Explanation 01 What Is Type Safety.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 9 24 | Comment 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 9 33 | Comment 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 9 42 | Comment 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 7 113 | 114 | 115 | APPLE 116 | KUMQUAT 117 | PEACH 118 | APRICOT 119 | YELLOW CURVED FRUIT 120 | ORANGE 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 9 196 | Comment 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | -------------------------------------------------------------------------------- /help/HowTo Access Bits as Boolean outputs.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 20 175 | 176 | 177 | 178 | 179 | 20 180 | 181 | 182 | 183 | 184 | 20 185 | 186 | 187 | 188 | 189 | 20 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | -------------------------------------------------------------------------------- /help/Type Flexibility/10 Programming-time type flexibility/HowTo 12 Generics Advanced.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 9 89 | Comment 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 9 109 | Comment 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 9 118 | Comment 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 9 139 | Comment 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 9 148 | Comment 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 9 168 | Comment 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 9 177 | Comment 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 9 197 | Comment 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 9 207 | Comment 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | -------------------------------------------------------------------------------- /help/Type Flexibility/20 Run-time type flexibility/HowTo 23 Explicit Conversion of Numerics.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 9 24 | Comment 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 9 40 | Comment 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 9 49 | Comment 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 9 58 | Comment 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 9 78 | Comment 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 9 118 | Comment 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 9 127 | Comment 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 9 136 | Comment 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 9 160 | Comment 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 9 169 | Comment 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 9 203 | Comment 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 9 245 | Comment 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | -------------------------------------------------------------------------------- /help/HowTo Generate all combinations of a number set.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 9 35 | Comment 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 20 127 | 128 | 129 | 130 | 131 | 20 132 | 133 | 134 | 135 | 136 | 20 137 | 138 | 139 | 140 | 141 | 20 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 9 150 | Comment 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 9 159 | Comment 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | -------------------------------------------------------------------------------- /help/Mutability/Explanation 07 Mutability, Architecture and Design Patterns.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 0 150 | 151 | 152 | 153 | 154 | 155 | 156 | 9 157 | Comment 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 9 166 | Link 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 9 175 | Link 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 9 184 | Link 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 9 193 | Link 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 9 202 | Comment 203 | 204 | 205 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 | 320 | 321 | 322 | 327 | 328 | 329 | 330 | 331 | 332 | 333 | 334 | 335 | 336 | 337 | 338 | 339 | 340 | 341 | 342 | 343 | 344 | 345 | 346 | 347 | 348 | 349 | 350 | 351 | 352 | 353 | 354 | 355 | 9 356 | Link 357 | 358 | 359 | 360 | 0 361 | 362 | 363 | 364 | 365 | 366 | 367 | 9 368 | Link 369 | 370 | 371 | 372 | 373 | 374 | 375 | 376 | 9 377 | Link 378 | 379 | 380 | 381 | 382 | 383 | 384 | 385 | 9 386 | Comment 387 | 388 | 389 | 390 | 391 | 392 | 393 | 394 | 395 | 9 396 | Comment 397 | 398 | 399 | 400 | 401 | 402 | 403 | 404 | 9 405 | Comment 406 | 407 | 408 | 409 | 410 | 411 | 412 | 413 | 9 414 | Link 415 | 416 | 417 | 418 | 419 | 420 | 421 | 422 | 423 | 424 | 425 | 426 | 427 | 428 | 429 | -------------------------------------------------------------------------------- /help/Type Flexibility/20 Run-time type flexibility/HowTo 22 Implicit Conversion of Numerics.vl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 9 24 | Comment 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 9 34 | Link 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 9 43 | Comment 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 9 52 | Comment 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 9 72 | Comment 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 9 81 | Link 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 9 91 | Comment 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 9 101 | Comment 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 9 110 | Link 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 9 121 | Comment 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 9 130 | Link 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 9 171 | Comment 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 9 199 | Comment 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 9 208 | Comment 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 9 217 | Comment 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 9 226 | Link 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 9 235 | Comment 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 9 244 | Comment 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 9 253 | Comment 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 9 262 | Comment 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 9 271 | Comment 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 9 280 | Comment 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 9 289 | Comment 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 9 298 | Comment 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | Toggle 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 | 320 | 321 | 322 | 323 | 324 | Toggle 325 | 326 | 327 | 328 | 329 | 330 | 331 | 332 | 333 | 334 | 335 | 336 | 337 | Toggle 338 | 339 | 340 | 341 | 342 | 343 | 344 | 345 | 9 346 | Comment 347 | 348 | 349 | 350 | 351 | 352 | 353 | 354 | 9 355 | Comment 356 | 357 | 358 | 359 | 360 | 361 | 362 | 363 | 9 364 | Comment 365 | 366 | 367 | 368 | 369 | 370 | 371 | 372 | 6 373 | Comment 374 | 375 | 376 | 377 | 378 | 379 | 380 | 381 | 382 | 383 | 384 | 385 | 386 | 387 | 388 | 389 | 390 | 391 | 392 | 393 | 394 | --------------------------------------------------------------------------------