Launch HN: Wasp (YC W21) – DSL for building full-stack web apps
I love new languages, and I love that you have all the basic elements of webapps as first class citizens.<p>....and then I saw that the page is still written using React and db access uses Prisma. They are not dependencies, you have to now about them, and their syntax and how they work.<p>What is the incentive for me as a developer to learn both them <i>and</i> wasp? Especially since there are multiple places where the wasp layer is a thin layer over the underlying capability supported by those dependencies.<p>Dont get me wrong. I say go bigger and make it a full-fledged DSL that generates react and prisma code without making them __visible at all__. That way nobody has to learn anything but wasp. Sure, you will be limited by whatever your underlying implementation layer is, but you can now switch from them easier, and its likely to last longer (there __was__ a time before React, and like will be one after too).<p>Can you be the +1 layer that people dont have to look under? More specifically:<p>1. Can you have inline .js files? Even better: Can you bring the page content _into_ wasp&#x27;s syntax? It currently says a webapp has pages and routes, how about expanding to say a webapp has components, elements and text?<p>2. Same question for storage schemas and migrations. Would that help with NoSQL integrations (vs expecting Prisma to support them)?<p>3. Can you eliminate the &quot;Note:&quot; sections in <a href="https:&#x2F;&#x2F;wasp-lang.dev&#x2F;docs&#x2F;language&#x2F;basic-elements" rel="nofollow">https:&#x2F;&#x2F;wasp-lang.dev&#x2F;docs&#x2F;language&#x2F;basic-elements</a>? Those are the leaks in the abstraction called wasp. And if the answer is no, then should there be a better abstraction?