<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html>
<head>
<meta name="Generator" content="Zarafa WebAccess v6.20.4-14107">
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<title>Convenience over extensibility? Or: How to build on top of hu.dwim.rdbms?</title>
<style type="text/css">
body
{
font-family: Arial, Verdana, Sans-Serif;
font-size: 12px;
padding: 5px 5px 5px 5px;
margin: 0px;
border-style: none;
background-color: #ffffff;
}
p, ul, li
{
margin-top: 0px;
margin-bottom: 0px;
}
</style>
</head>
<body>
<p>>>>we stick to long names (and use fuzzy completion in slime).<br />>><br />>> I will try this fuzzy completion thing but I'm sceptical. Shorter names may<br />>> still give you an advantage when<br />>> it comes to reading code. :)<br />><br />><br />>i suggest a bit more meditation on this. and if you still haven't<br />>changed your mind, then run experiments that include returning to code<br />>you wrote several months/years ago... :)<br /><br />Writing code in such a way that you can come back to it after years and understand it is certainly a skill.<br />A skill I don't have much experience with. I will encounter this challenge soon enough, though.<br /><br />><br />>sometimes it happens that i accidentally implement something twice<br />>because of patch organization problems and/or not having an unlimited<br />>memory. to my delight, i more often than not name stuff exactly the<br />>same way in both implementations which are quite distant in time.<br />><br /><br />As for patching I don't have much experience either. I have never really collaborated with others when writing code.<br />I'm using bazaar tentatively to sync my stuff between desktop and laptop but that's about it.<br />(well, and since recently some kind of production server)<br /><br />>it also means that when i happen to look for something, i'll grep for<br />>at least a part of the name i would give it. this strategy usually<br />>very cheaply gets me to what i'm looking for. even years later...<br />><br /><br />Global grep certainly benefits from long descriptive names but it can, as I see it,<br />lead to weak files/directories and systems/packages structures.<br /><br />A grep of a sub-directory should do the trick even for short names.<br />(short names may also appear in conjunction with package names)<br />Ensuring that meaning is distributed equally on all levels (text/code, files/directories, systems/packages)<br />should make short names more practical. I have to admit that I enjoy working with packages a lot, even<br />as to go so far as to shadowing symbols so that I can reuse them as often as I see fit.<br /><br />Fictional example:<br /><br />(defpackage "CURL"<br /> (:export "GET"))<br /><br />(defpackage "FOO"<br /> (:use "CURL")<br /> (:shadow "GET"))<br /><br />(in-package "FOO")<br /><br />(defun get (arg)<br /> (do-additional-stuff (curl:get arg)))<br /><br />I'm also fond of using :shadowing-import-from.<br /> <br />For me calling the same thing (or almost the same) with the same words is just to relieving.<br /><br />>all in all, having long and descriptive names is not a question for me<br />>anymore, especially with slime's fuzzy completion.<br />><br /><br />I'm afraid I have to learn this the hard way even if it is just for finding the right balance between short and long.<br /><br />Writing down what some abbreviations stand for is also something I'm willing to do.<br />(readme file, documentation string, comments)<br />Also, in my opinion, the more local a name the shorter it can be.<br /><br />Enough of my strange customs. :) Wish you a nice weekend.<br /><br /><br />( P.S. So now you have it, hopefully not a debate. Let's make sure this stays dialogue.<br /> (and just in case you have doubts, I'm still willing to adapt))<br /><br />><br />>> Just want to add that I'm grateful for your software, thank you.<br />><br />><br />>we're glad you find it useful!<br />><br />>-- <br />> attila<br />><br />><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> </p>
!DSPAM:4cd42ec048584894726250!
</body>
</html>