![]() Added file type definitions for html templates: ERB, ASPX, EJS, JSP.Linux and Windows users have additional menu items under File: Quit Light Table and About Light Table.Linux and Windows users have access keys on menus.Add build target for generating cljsdeps.js (need for ClojureScript upgrade).Light Table builds without warnings on ClojureScript 1.7.x.Parinfer is on more solid foundation, with separate indentation and braces modes. It would not let you do anything! You had to know how to bypass it. For instance, now Paredit will detect if you’re unbalanced and let you type in closing parens. I use Paredit and I’m comfortable with it, but it took a lot of time on my part and a lot of evolution on the part of the implementors to iron out some wrinkles. If the instructors had had to sit down with them to count closing parens, it may have been a “good, character-building exercise”, but the broader purpose of the workshop would have been lost. Having a system where an instructor could easily help them nest using only the space bar or tab key was really helpful. And not having to count the closing things and get them in the right order saved a lot of headaches.īeginners don’t know how spacing, indentation, etc work. Having half the number of braces to type really helped. Honestly, how often do you type curly braces when you’re not coding? They couldn’t find them. I noticed two things:īeginners were having trouble finding the braces keys, even for those who could touch type. The experienced programmers grumbled a bit as they got used to it, but it worked super well for beginners. I’ve used Parinfer in a Clojure workshop and it was great. It is really nice that you don’t have to learn a whole bunch of commands. If I were going to start over today with what exists now, I’d go with Parinfer. But I think there are good reasons to avoid them too, and I hope that tool developers will keep these in mind, providing ways to avoid them in their editors while nonetheless supporting auto-reindentation and bracket matching. But my preference is for the programmer to specify the brackets, and use auto-reindentation to clean up indentation and spot problems.Īgain, I can see why people like paredit and parinfer, which I definitely agree are clever, and if people find them helpful then I think it’s great for them to use them. And programmers should routinely invoke this feature on everything they write. Whitespace is a terrific visual guide to structure, and IMNSHO every Lisp editor must have an auto-reindentation feature that can be manually triggered by the programmer to make the whitespace conform to the programmer-typed brackets. So it seems to me that programmers should also care primarily about brackets, not whitespace, or at least have brackets, not whitespace, foremost in their minds. Having paredit prevent character insertions in some situations, or having parinfer add/delete brackets that may be distant from the insertion point, are much worse.Ĭlojure cares about brackets, not about whitespace. auto-typing of closing brackets, or wrapping rather than replacement of a selection when typing an open bracket. ![]() ![]() I’ve witnessed considerable exasperation stemming even from some of the less invasive “helpful” interventions in some editors, e.g. My students already know how to type and manipulate text, and requiring that they learn new ways to do this on top of everything else (basic programming concepts, functional programming, Clojure, AI, etc.) seems cruel and counterproductive. Paredit/parinfer makes this frustrating or impossible. I often cut/paste and/or edit code in non-linear ways as I’m thinking through a problem, with my code being in syntactically invalid states at many points along the way. While I think it’s swell for others to use paredit or parinfer if they like them, some of the reasons that I don’t want them in my teaching or development editing environments are: FWIW I’m on the “avoid” side of this, for myself (a long-time lisper) and for my students (who are often new programmers). ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |