Title: [221393] trunk/Tools
Revision
221393
Author
fpi...@apple.com
Date
2017-08-30 12:46:32 -0700 (Wed, 30 Aug 2017)

Log Message

Rename ArrayLang to WebGPU Shading Language, or WSL for short, pronounced "whistle"
https://bugs.webkit.org/show_bug.cgi?id=176117

Reviewed by Myles Maxfield.
        
Renamed ArrayLangRI to WebGPUShadingLanguageRI.
        
Renamed ALSyntaxError/ALTypeError to WSyntaxError/WTypeError.
        
Renamed all references to "ArrayLang" in the code to "WSL".

* ArrayLangRI: Removed.
* ArrayLangRI/ALSyntaxError.js: Removed.
* ArrayLangRI/ALTypeError.js: Removed.
* ArrayLangRI/AddressSpace.js: Removed.
* ArrayLangRI/All.js: Removed.
* ArrayLangRI/ArrayRefType.js: Removed.
* ArrayLangRI/ArrayType.js: Removed.
* ArrayLangRI/Assignment.js: Removed.
* ArrayLangRI/Block.js: Removed.
* ArrayLangRI/CallAssignment.js: Removed.
* ArrayLangRI/CallExpression.js: Removed.
* ArrayLangRI/CallFunction.js: Removed.
* ArrayLangRI/Check.js: Removed.
* ArrayLangRI/Checker.js: Removed.
* ArrayLangRI/CommaExpression.js: Removed.
* ArrayLangRI/ConstexprTypeParameter.js: Removed.
* ArrayLangRI/EBuffer.js: Removed.
* ArrayLangRI/EBufferBuilder.js: Removed.
* ArrayLangRI/EFloat.js: Removed.
* ArrayLangRI/EInt.js: Removed.
* ArrayLangRI/EPtr.js: Removed.
* ArrayLangRI/EValue.js: Removed.
* ArrayLangRI/EvaluationCommon.js: Removed.
* ArrayLangRI/Evaluator.js: Removed.
* ArrayLangRI/_expression_.js: Removed.
* ArrayLangRI/Field.js: Removed.
* ArrayLangRI/Func.js: Removed.
* ArrayLangRI/FuncDef.js: Removed.
* ArrayLangRI/FuncInstantiator.js: Removed.
* ArrayLangRI/FuncParameter.js: Removed.
* ArrayLangRI/FunctionLikeBlock.js: Removed.
* ArrayLangRI/Inline.js: Removed.
* ArrayLangRI/Inliner.js: Removed.
* ArrayLangRI/InstantiateImmediates.js: Removed.
* ArrayLangRI/IntLiteral.js: Removed.
* ArrayLangRI/Intrinsics.js: Removed.
* ArrayLangRI/Lexer.js: Removed.
* ArrayLangRI/LexerToken.js: Removed.
* ArrayLangRI/NameContext.js: Removed.
* ArrayLangRI/NameResolver.js: Removed.
* ArrayLangRI/NativeFunc.js: Removed.
* ArrayLangRI/NativeType.js: Removed.
* ArrayLangRI/NativeTypeInstance.js: Removed.
* ArrayLangRI/Node.js: Removed.
* ArrayLangRI/NullType.js: Removed.
* ArrayLangRI/Parse.js: Removed.
* ArrayLangRI/Prepare.js: Removed.
* ArrayLangRI/Program.js: Removed.
* ArrayLangRI/Protocol.js: Removed.
* ArrayLangRI/ProtocolDecl.js: Removed.
* ArrayLangRI/ProtocolRef.js: Removed.
* ArrayLangRI/PtrType.js: Removed.
* ArrayLangRI/ReferenceType.js: Removed.
* ArrayLangRI/ResolveNames.js: Removed.
* ArrayLangRI/ResolveOverloadImpl.js: Removed.
* ArrayLangRI/ResolveTypeDefs.js: Removed.
* ArrayLangRI/Return.js: Removed.
* ArrayLangRI/ReturnException.js: Removed.
* ArrayLangRI/Rewriter.js: Removed.
* ArrayLangRI/StandardLibrary.js: Removed.
* ArrayLangRI/StructType.js: Removed.
* ArrayLangRI/Substitution.js: Removed.
* ArrayLangRI/SuffixCallAssignment.js: Removed.
* ArrayLangRI/Test.js: Removed.
* ArrayLangRI/Type.js: Removed.
* ArrayLangRI/TypeDef.js: Removed.
* ArrayLangRI/TypeDefResolver.js: Removed.
* ArrayLangRI/TypeOrVariableRef.js: Removed.
* ArrayLangRI/TypeRef.js: Removed.
* ArrayLangRI/TypeVariable.js: Removed.
* ArrayLangRI/UnificationContext.js: Removed.
* ArrayLangRI/Value.js: Removed.
* ArrayLangRI/VariableDecl.js: Removed.
* ArrayLangRI/VariableRef.js: Removed.
* ArrayLangRI/VisitingSet.js: Removed.
* ArrayLangRI/Visitor.js: Removed.
* WebGPUShadingLanguageRI: Copied from Tools/ArrayLangRI.
* WebGPUShadingLanguageRI/ALSyntaxError.js: Removed.
* WebGPUShadingLanguageRI/ALTypeError.js: Removed.
* WebGPUShadingLanguageRI/All.js:
* WebGPUShadingLanguageRI/CallFunction.js:
(callFunctionByRef):
* WebGPUShadingLanguageRI/Checker.js:
(Checker.prototype.visitProtocolDecl.set throw):
* WebGPUShadingLanguageRI/Intrinsics.js:
(Intrinsics.prototype.add):
(Intrinsics):
* WebGPUShadingLanguageRI/Lexer.js:
(Lexer):
* WebGPUShadingLanguageRI/NameContext.js:
(NameContext.prototype.add):
* WebGPUShadingLanguageRI/NameResolver.js:
(NameResolver.prototype._resolveTypeArguments):
(NameResolver.prototype.visitTypeRef):
(NameResolver.prototype.visitVariableRef):
* WebGPUShadingLanguageRI/Parse.js:
* WebGPUShadingLanguageRI/StandardLibrary.js:
* WebGPUShadingLanguageRI/StructType.js:
(StructType.prototype.add):
(StructType.prototype.instantiate):
* WebGPUShadingLanguageRI/TypeDefResolver.js:
(TypeDefResolver.prototype.visitTypeRef):
(TypeDefResolver):
* WebGPUShadingLanguageRI/VisitingSet.js:
(VisitingSet.prototype.doVisit):
(VisitingSet):
* WebGPUShadingLanguageRI/WSyntaxError.js: Copied from Tools/ArrayLangRI/ALSyntaxError.js.
(ALSyntaxError): Deleted.
* WebGPUShadingLanguageRI/WTypeError.js: Copied from Tools/ArrayLangRI/ALTypeError.js.
(ALTypeError): Deleted.

Modified Paths

Added Paths

Removed Paths

Diff

Modified: trunk/Tools/ChangeLog (221392 => 221393)


--- trunk/Tools/ChangeLog	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/ChangeLog	2017-08-30 19:46:32 UTC (rev 221393)
@@ -1,3 +1,127 @@
+2017-08-30  Filip Pizlo  <fpi...@apple.com>
+
+        Rename ArrayLang to WebGPU Shading Language, or WSL for short, pronounced "whistle"
+        https://bugs.webkit.org/show_bug.cgi?id=176117
+
+        Reviewed by Myles Maxfield.
+        
+        Renamed ArrayLangRI to WebGPUShadingLanguageRI.
+        
+        Renamed ALSyntaxError/ALTypeError to WSyntaxError/WTypeError.
+        
+        Renamed all references to "ArrayLang" in the code to "WSL".
+
+        * ArrayLangRI: Removed.
+        * ArrayLangRI/ALSyntaxError.js: Removed.
+        * ArrayLangRI/ALTypeError.js: Removed.
+        * ArrayLangRI/AddressSpace.js: Removed.
+        * ArrayLangRI/All.js: Removed.
+        * ArrayLangRI/ArrayRefType.js: Removed.
+        * ArrayLangRI/ArrayType.js: Removed.
+        * ArrayLangRI/Assignment.js: Removed.
+        * ArrayLangRI/Block.js: Removed.
+        * ArrayLangRI/CallAssignment.js: Removed.
+        * ArrayLangRI/CallExpression.js: Removed.
+        * ArrayLangRI/CallFunction.js: Removed.
+        * ArrayLangRI/Check.js: Removed.
+        * ArrayLangRI/Checker.js: Removed.
+        * ArrayLangRI/CommaExpression.js: Removed.
+        * ArrayLangRI/ConstexprTypeParameter.js: Removed.
+        * ArrayLangRI/EBuffer.js: Removed.
+        * ArrayLangRI/EBufferBuilder.js: Removed.
+        * ArrayLangRI/EFloat.js: Removed.
+        * ArrayLangRI/EInt.js: Removed.
+        * ArrayLangRI/EPtr.js: Removed.
+        * ArrayLangRI/EValue.js: Removed.
+        * ArrayLangRI/EvaluationCommon.js: Removed.
+        * ArrayLangRI/Evaluator.js: Removed.
+        * ArrayLangRI/_expression_.js: Removed.
+        * ArrayLangRI/Field.js: Removed.
+        * ArrayLangRI/Func.js: Removed.
+        * ArrayLangRI/FuncDef.js: Removed.
+        * ArrayLangRI/FuncInstantiator.js: Removed.
+        * ArrayLangRI/FuncParameter.js: Removed.
+        * ArrayLangRI/FunctionLikeBlock.js: Removed.
+        * ArrayLangRI/Inline.js: Removed.
+        * ArrayLangRI/Inliner.js: Removed.
+        * ArrayLangRI/InstantiateImmediates.js: Removed.
+        * ArrayLangRI/IntLiteral.js: Removed.
+        * ArrayLangRI/Intrinsics.js: Removed.
+        * ArrayLangRI/Lexer.js: Removed.
+        * ArrayLangRI/LexerToken.js: Removed.
+        * ArrayLangRI/NameContext.js: Removed.
+        * ArrayLangRI/NameResolver.js: Removed.
+        * ArrayLangRI/NativeFunc.js: Removed.
+        * ArrayLangRI/NativeType.js: Removed.
+        * ArrayLangRI/NativeTypeInstance.js: Removed.
+        * ArrayLangRI/Node.js: Removed.
+        * ArrayLangRI/NullType.js: Removed.
+        * ArrayLangRI/Parse.js: Removed.
+        * ArrayLangRI/Prepare.js: Removed.
+        * ArrayLangRI/Program.js: Removed.
+        * ArrayLangRI/Protocol.js: Removed.
+        * ArrayLangRI/ProtocolDecl.js: Removed.
+        * ArrayLangRI/ProtocolRef.js: Removed.
+        * ArrayLangRI/PtrType.js: Removed.
+        * ArrayLangRI/ReferenceType.js: Removed.
+        * ArrayLangRI/ResolveNames.js: Removed.
+        * ArrayLangRI/ResolveOverloadImpl.js: Removed.
+        * ArrayLangRI/ResolveTypeDefs.js: Removed.
+        * ArrayLangRI/Return.js: Removed.
+        * ArrayLangRI/ReturnException.js: Removed.
+        * ArrayLangRI/Rewriter.js: Removed.
+        * ArrayLangRI/StandardLibrary.js: Removed.
+        * ArrayLangRI/StructType.js: Removed.
+        * ArrayLangRI/Substitution.js: Removed.
+        * ArrayLangRI/SuffixCallAssignment.js: Removed.
+        * ArrayLangRI/Test.js: Removed.
+        * ArrayLangRI/Type.js: Removed.
+        * ArrayLangRI/TypeDef.js: Removed.
+        * ArrayLangRI/TypeDefResolver.js: Removed.
+        * ArrayLangRI/TypeOrVariableRef.js: Removed.
+        * ArrayLangRI/TypeRef.js: Removed.
+        * ArrayLangRI/TypeVariable.js: Removed.
+        * ArrayLangRI/UnificationContext.js: Removed.
+        * ArrayLangRI/Value.js: Removed.
+        * ArrayLangRI/VariableDecl.js: Removed.
+        * ArrayLangRI/VariableRef.js: Removed.
+        * ArrayLangRI/VisitingSet.js: Removed.
+        * ArrayLangRI/Visitor.js: Removed.
+        * WebGPUShadingLanguageRI: Copied from Tools/ArrayLangRI.
+        * WebGPUShadingLanguageRI/ALSyntaxError.js: Removed.
+        * WebGPUShadingLanguageRI/ALTypeError.js: Removed.
+        * WebGPUShadingLanguageRI/All.js:
+        * WebGPUShadingLanguageRI/CallFunction.js:
+        (callFunctionByRef):
+        * WebGPUShadingLanguageRI/Checker.js:
+        (Checker.prototype.visitProtocolDecl.set throw):
+        * WebGPUShadingLanguageRI/Intrinsics.js:
+        (Intrinsics.prototype.add):
+        (Intrinsics):
+        * WebGPUShadingLanguageRI/Lexer.js:
+        (Lexer):
+        * WebGPUShadingLanguageRI/NameContext.js:
+        (NameContext.prototype.add):
+        * WebGPUShadingLanguageRI/NameResolver.js:
+        (NameResolver.prototype._resolveTypeArguments):
+        (NameResolver.prototype.visitTypeRef):
+        (NameResolver.prototype.visitVariableRef):
+        * WebGPUShadingLanguageRI/Parse.js:
+        * WebGPUShadingLanguageRI/StandardLibrary.js:
+        * WebGPUShadingLanguageRI/StructType.js:
+        (StructType.prototype.add):
+        (StructType.prototype.instantiate):
+        * WebGPUShadingLanguageRI/TypeDefResolver.js:
+        (TypeDefResolver.prototype.visitTypeRef):
+        (TypeDefResolver):
+        * WebGPUShadingLanguageRI/VisitingSet.js:
+        (VisitingSet.prototype.doVisit):
+        (VisitingSet):
+        * WebGPUShadingLanguageRI/WSyntaxError.js: Copied from Tools/ArrayLangRI/ALSyntaxError.js.
+        (ALSyntaxError): Deleted.
+        * WebGPUShadingLanguageRI/WTypeError.js: Copied from Tools/ArrayLangRI/ALTypeError.js.
+        (ALTypeError): Deleted.
+
 2017-08-30  Eric Carlson  <eric.carl...@apple.com>
 
         Add Logger observer and helper class

Deleted: trunk/Tools/WebGPUShadingLanguageRI/ALSyntaxError.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/ALSyntaxError.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/ALSyntaxError.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */
-"use strict";
-
-class ALSyntaxError extends Error {
-    constructor(originString, message)
-    {
-        super("Syntax error at " + originString + ": " + message);
-        this.originString = originString;
-        this.syntaxErrorMessage = message;
-    }
-}
-

Deleted: trunk/Tools/WebGPUShadingLanguageRI/ALTypeError.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/ALTypeError.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/ALTypeError.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */
-"use strict";
-
-class ALTypeError extends Error {
-    constructor(originString, message)
-    {
-        super("Type error at " + originString + ": " + message);
-        this.originString = originString;
-        this.typeErrorMessage = message;
-    }
-}
-

Modified: trunk/Tools/WebGPUShadingLanguageRI/All.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/All.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/All.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -33,8 +33,6 @@
 load("Visitor.js");
 load("EValue.js");
 
-load("ALSyntaxError.js");
-load("ALTypeError.js");
 load("AddressSpace.js");
 load("ArrayRefType.js");
 load("ArrayType.js");
@@ -98,3 +96,5 @@
 load("VariableDecl.js");
 load("VariableRef.js");
 load("VisitingSet.js");
+load("WSyntaxError.js");
+load("WTypeError.js");

Modified: trunk/Tools/WebGPUShadingLanguageRI/CallFunction.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/CallFunction.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/CallFunction.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -35,7 +35,7 @@
     });
     let func = resolveInlinedFunction(program, name, typeArguments, argumentTypes);
     if (!func)
-        throw new ALTypeError("<callFunction>", "Cannot resolve function call " + name + "<" + typeArguments + ">(" + argumentList + ")");
+        throw new WTypeError("<callFunction>", "Cannot resolve function call " + name + "<" + typeArguments + ">(" + argumentList + ")");
     for (let i = 0; i < func.parameters.length; ++i)
         func.parameters[i].ePtr.copyFrom(argumentList[i]);
     return new Evaluator(program).visitFunctionBody(func.body);

Modified: trunk/Tools/WebGPUShadingLanguageRI/Checker.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/Checker.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/Checker.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -64,10 +64,10 @@
                 parameterType.visit(noticeTypeVariable);
             for (let typeParameter of signature.typeParameters) {
                 if (!set.has(typeParameter))
-                    throw ALTypeError(typeParameter.origin.originString, "Type parameter to protocol signature not inferrable from value parameters");
+                    throw WTypeError(typeParameter.origin.originString, "Type parameter to protocol signature not inferrable from value parameters");
             }
             if (!set.has(node.typeVariable))
-                throw new ALTypeError(signature.origin.originString, "Protocol's type variable not mentioned in signature");
+                throw new WTypeError(signature.origin.originString, "Protocol's type variable not mentioned in signature");
         }
     }
     
@@ -78,10 +78,10 @@
             let result = node.typeArguments[i].visit(this);
             if (argumentIsType) {
                 if (!typeArguments[i].inherits(typeArguments[i]))
-                    throw new ALTypeError(origin.originString, "Type argument does not inherit protocol");
+                    throw new WTypeError(origin.originString, "Type argument does not inherit protocol");
             } else {
                 if (!result.equals(typeParameters[i].type))
-                    throw new ALTypeError(origin.originString, "Wrong type for constexpr");
+                    throw new WTypeError(origin.originString, "Wrong type for constexpr");
             }
         }
     }
@@ -101,13 +101,13 @@
             return;
         
         if (!node.elementType.withRecursivelyInstantiatedImmediates.isPrimitive)
-            throw new ALTypeError(node.origin.originString, "Illegal pointer to non-primitive type");
+            throw new WTypeError(node.origin.originString, "Illegal pointer to non-primitive type");
     }
     
     visitArrayType(node)
     {
         if (!node.numElements.isConstexpr)
-            throw new ALTypeError(node.origin.originString, "Array length must be constexpr");
+            throw new WTypeError(node.origin.originString, "Array length must be constexpr");
     }
     
     visitAssignment(node)
@@ -116,7 +116,7 @@
         let lhsType = node.lhs.visit(this);
         let rhsType = node.rhs.visit(this);
         if (!lhsType.equals(rhsType))
-            throw new ALTypeError(node.origin.originString, "Type mismatch in assignment: " + lhsType + " versus " + rhsType);
+            throw new WTypeError(node.origin.originString, "Type mismatch in assignment: " + lhsType + " versus " + rhsType);
         return lhsType;
     }
     
@@ -132,12 +132,12 @@
             if (!resultType)
                 throw new Error("Null result type from " + node.value);
             if (!node.func.returnType.equals(resultType))
-                throw new ALTypeError(node.origin.originString, "Trying to return " + resultType + " in a function that returns " + func.returnType);
+                throw new WTypeError(node.origin.originString, "Trying to return " + resultType + " in a function that returns " + func.returnType);
             return;
         }
         
         if (!func.returnType.equals(this._program.intrinsics.void))
-            throw new ALTypeError(node.origin.originString, "Non-void function must return a value");
+            throw new WTypeError(node.origin.originString, "Non-void function must return a value");
     }
     
     visitIntLiteral(node)
@@ -183,7 +183,7 @@
                 node.name, node.typeArguments, argumentTypes);
         }
         if (!overload)
-            throw new ALTypeError(node.origin.originString, "Did not find function for call");
+            throw new WTypeError(node.origin.originString, "Did not find function for call");
         node.func = overload.func;
         node.actualTypeArguments = overload.typeArguments.map(TypeRef.wrap);
         let result = overload.func.returnType.substituteToUnification(

Modified: trunk/Tools/WebGPUShadingLanguageRI/Intrinsics.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/Intrinsics.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/Intrinsics.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -71,7 +71,7 @@
     {
         let intrinsic = this._map.get(thing.toString());
         if (!intrinsic)
-            throw new ALTypeError(thing.origin.originString, "Unrecognized intrinsic: " + thing);
+            throw new WTypeError(thing.origin.originString, "Unrecognized intrinsic: " + thing);
         intrinsic(thing);
     }
 }

Modified: trunk/Tools/WebGPUShadingLanguageRI/Lexer.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/Lexer.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/Lexer.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -138,7 +138,7 @@
     
     fail(error)
     {
-        throw new ALSyntaxError(this.originString, error);
+        throw new WSyntaxError(this.originString, error);
     }
     
     backtrackingScope(callback)
@@ -147,7 +147,7 @@
         try {
             return callback();
         } catch (e) {
-            if (e instanceof ALSyntaxError) {
+            if (e instanceof WSyntaxError) {
                 this.state = state;
                 return null;
             }

Modified: trunk/Tools/WebGPUShadingLanguageRI/NameContext.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/NameContext.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/NameContext.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -77,7 +77,7 @@
             return;
         }
         if (this._map.has(thing.name))
-            throw new ALTypeError(thing.origin.originString, "Duplicate name: " + thing.name);
+            throw new WTypeError(thing.origin.originString, "Duplicate name: " + thing.name);
         this._map.set(thing.name, thing);
     }
     

Modified: trunk/Tools/WebGPUShadingLanguageRI/NameResolver.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/NameResolver.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/NameResolver.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -129,7 +129,7 @@
             if (typeArgument instanceof TypeOrVariableRef) {
                 let thing = this._nameContext.get(NotFunc, typeArgument.name);
                 if (!thing)
-                    new ALTypeError(typeArgument.origin.originString, "Could not find type or variable named " + typeArgument.name);
+                    new WTypeError(typeArgument.origin.originString, "Could not find type or variable named " + typeArgument.name);
                 if (thing instanceof Value) {
                     typeArgument[i] = new VariableRef(typeArgument.origin, typeArgument.name);
                 } else
@@ -138,7 +138,7 @@
             
             if (typeArgument[i] instanceof Value
                 && !typeArgument[i].isConstexpr)
-                throw new ALTypeError(typeArgument[i].origin.originString, "Expected constexpr");
+                throw new WTypeError(typeArgument[i].origin.originString, "Expected constexpr");
         }
     }
     
@@ -148,21 +148,21 @@
         
         let type = this._nameContext.get(Type, node.name);
         if (!type)
-            throw new ALTypeError(node.origin.originString, "Could not find type named " + node.name);
+            throw new WTypeError(node.origin.originString, "Could not find type named " + node.name);
         if (!this._nameContext.isDefined(type))
-            throw new ALTypeError(node.origin.originString, "Illegal forward use of type named " + node.name);
+            throw new WTypeError(node.origin.originString, "Illegal forward use of type named " + node.name);
         node.type = type;
         
         if (type.typeParameters.length != node.typeArguments.length)
-            throw new ALTypeError(node.origin.originString, "Wrong number of type arguments");
+            throw new WTypeError(node.origin.originString, "Wrong number of type arguments");
         for (let i = 0; i < type.typeParameters.length; ++i) {
             let parameterIsType = type.typeParameters[i] instanceof TypeVariable;
             let argumentIsType = node.typeArguments[i] instanceof Type;
             node.typeArguments[i].visit(this);
             if (parameterIsType && !argumentIsType)
-                throw new ALTypeError(node.origin.originString, "Expected type, but got value at argument #" + i);
+                throw new WTypeError(node.origin.originString, "Expected type, but got value at argument #" + i);
             if (!parameterIsType && argumentIsType)
-                throw new ALTypeError(node.origin.originString, "Expected value, but got type at argument #" + i);
+                throw new WTypeError(node.origin.originString, "Expected value, but got type at argument #" + i);
         }
 
         super.visitTypeRef(node);
@@ -179,7 +179,7 @@
     {
         let result = this._nameContext.get(Value, node.name);
         if (!result)
-            throw new ALTypeError(node.origin.originString, "Could not find variable named " + node.name);
+            throw new WTypeError(node.origin.originString, "Could not find variable named " + node.name);
         node.variable = result;
     }
     

Modified: trunk/Tools/WebGPUShadingLanguageRI/Parse.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/Parse.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/Parse.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -29,8 +29,8 @@
     let lexer = new Lexer(origin, lineNumberOffset, text);
     
     // The hardest part of dealing with C-like languages is parsing variable declaration statements.
-    // Let's consider if this happens in ArrayLang. Here are the valid statements in ArrayLang that
-    // begin with an identifier, if we assume that any _expression_ can be a standalone statement.
+    // Let's consider if this happens in WSL. Here are the valid statements in WSL that being with an
+    // identifier, if we assume that any _expression_ can be a standalone statement.
     //
     //     x;
     //     x <binop> y;

Modified: trunk/Tools/WebGPUShadingLanguageRI/StandardLibrary.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/StandardLibrary.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/StandardLibrary.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -26,7 +26,7 @@
 
 // NOTE: The next line is line 28, and we rely on this in Prepare.js.
 const standardLibrary = `
-// This is the ArrayLang standard library. Implementations of all of these things are in
+// This is the WSL standard library. Implementations of all of these things are in
 // Intrinsics.js.
 
 // Need to bootstrap void first.

Modified: trunk/Tools/WebGPUShadingLanguageRI/StructType.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/StructType.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/StructType.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -37,7 +37,7 @@
     add(field)
     {
         if (this._fields.has(field.name))
-            throw new ALTypeError(field.origin.originString, "Duplicate field name: " + field.name);
+            throw new WTypeError(field.origin.originString, "Duplicate field name: " + field.name);
         this._fields.set(field.name, field);
     }
     
@@ -59,7 +59,7 @@
     instantiate(typeArguments)
     {
         if (typeArguments.length != this.typeParameters.length)
-            throw new ALTypeError(origin.originString, "Wrong number of type arguments to instantiation");
+            throw new WTypeError(origin.originString, "Wrong number of type arguments to instantiation");
         
         let substitution = Substitution.mapping(this.typeParameters, typeArguments);
         let instantiateImmediates = new InstantiateImmediates();

Modified: trunk/Tools/WebGPUShadingLanguageRI/TypeDefResolver.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/TypeDefResolver.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/TypeDefResolver.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -42,7 +42,7 @@
                 for (let i = 0; i < node.typeArguments.length; ++i)
                     node.typeArguments[i].unify(unificationContext, node.type.typeParameters[i]);
                 if (!unificationContext.verify())
-                    throw new ALTypeError(node.origin.originString, "Type reference to a type definition violates protocol constraints");
+                    throw new WTypeError(node.origin.originString, "Type reference to a type definition violates protocol constraints");
                 
                 let newType = node.type.type.substituteToUnification(node.type.typeParameters, unificationContext);
                 newType.visit(this);

Modified: trunk/Tools/WebGPUShadingLanguageRI/VisitingSet.js (221392 => 221393)


--- trunk/Tools/ArrayLangRI/VisitingSet.js	2017-08-30 19:40:35 UTC (rev 221392)
+++ trunk/Tools/WebGPUShadingLanguageRI/VisitingSet.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -33,7 +33,7 @@
     doVisit(item, callback)
     {
         if (this._set.has(item))
-            throw new ALTypeError(item.origin.originString, "Recursive " + item.kind);
+            throw new WTypeError(item.origin.originString, "Recursive " + item.kind);
         this._set.add(item);
         try {
             return callback();

Copied: trunk/Tools/WebGPUShadingLanguageRI/WSyntaxError.js (from rev 221392, trunk/Tools/ArrayLangRI/ALSyntaxError.js) (0 => 221393)


--- trunk/Tools/WebGPUShadingLanguageRI/WSyntaxError.js	                        (rev 0)
+++ trunk/Tools/WebGPUShadingLanguageRI/WSyntaxError.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2017 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ */
+"use strict";
+
+class WSyntaxError extends Error {
+    constructor(originString, message)
+    {
+        super("Syntax error at " + originString + ": " + message);
+        this.originString = originString;
+        this.syntaxErrorMessage = message;
+    }
+}
+

Copied: trunk/Tools/WebGPUShadingLanguageRI/WTypeError.js (from rev 221392, trunk/Tools/ArrayLangRI/ALTypeError.js) (0 => 221393)


--- trunk/Tools/WebGPUShadingLanguageRI/WTypeError.js	                        (rev 0)
+++ trunk/Tools/WebGPUShadingLanguageRI/WTypeError.js	2017-08-30 19:46:32 UTC (rev 221393)
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2017 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ */
+"use strict";
+
+class WTypeError extends Error {
+    constructor(originString, message)
+    {
+        super("Type error at " + originString + ": " + message);
+        this.originString = originString;
+        this.typeErrorMessage = message;
+    }
+}
+
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to